package com.menfan.saas.domain;

import java.util.ArrayList;
import java.util.Date;
import java.util.List;

public class SpuEntityExample {
    protected String orderByClause;

    protected boolean distinct;

    protected List<Criteria> oredCriteria;

    private Integer limit;

    private Integer offset;

    public SpuEntityExample() {
        oredCriteria = new ArrayList<Criteria>();
    }

    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    public String getOrderByClause() {
        return orderByClause;
    }

    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    public boolean isDistinct() {
        return distinct;
    }

    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    public void setLimit(Integer limit) {
        this.limit = limit;
    }

    public Integer getLimit() {
        return limit;
    }

    public void setOffset(Integer offset) {
        this.offset = offset;
    }

    public Integer getOffset() {
        return offset;
    }

    protected abstract static class GeneratedCriteria {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<Criterion>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
        }

        public Criteria andIdIsNull() {
            addCriterion("id is null");
            return (Criteria) this;
        }

        public Criteria andIdIsNotNull() {
            addCriterion("id is not null");
            return (Criteria) this;
        }

        public Criteria andIdEqualTo(Integer value) {
            addCriterion("id =", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotEqualTo(Integer value) {
            addCriterion("id <>", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdGreaterThan(Integer value) {
            addCriterion("id >", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("id >=", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLessThan(Integer value) {
            addCriterion("id <", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLessThanOrEqualTo(Integer value) {
            addCriterion("id <=", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdIn(List<Integer> values) {
            addCriterion("id in", values, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotIn(List<Integer> values) {
            addCriterion("id not in", values, "id");
            return (Criteria) this;
        }

        public Criteria andIdBetween(Integer value1, Integer value2) {
            addCriterion("id between", value1, value2, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotBetween(Integer value1, Integer value2) {
            addCriterion("id not between", value1, value2, "id");
            return (Criteria) this;
        }

        public Criteria andSpuIdIsNull() {
            addCriterion("spu_id is null");
            return (Criteria) this;
        }

        public Criteria andSpuIdIsNotNull() {
            addCriterion("spu_id is not null");
            return (Criteria) this;
        }

        public Criteria andSpuIdEqualTo(String value) {
            addCriterion("spu_id =", value, "spuId");
            return (Criteria) this;
        }

        public Criteria andSpuIdNotEqualTo(String value) {
            addCriterion("spu_id <>", value, "spuId");
            return (Criteria) this;
        }

        public Criteria andSpuIdGreaterThan(String value) {
            addCriterion("spu_id >", value, "spuId");
            return (Criteria) this;
        }

        public Criteria andSpuIdGreaterThanOrEqualTo(String value) {
            addCriterion("spu_id >=", value, "spuId");
            return (Criteria) this;
        }

        public Criteria andSpuIdLessThan(String value) {
            addCriterion("spu_id <", value, "spuId");
            return (Criteria) this;
        }

        public Criteria andSpuIdLessThanOrEqualTo(String value) {
            addCriterion("spu_id <=", value, "spuId");
            return (Criteria) this;
        }

        public Criteria andSpuIdLike(String value) {
            addCriterion("spu_id like", value, "spuId");
            return (Criteria) this;
        }

        public Criteria andSpuIdNotLike(String value) {
            addCriterion("spu_id not like", value, "spuId");
            return (Criteria) this;
        }

        public Criteria andSpuIdIn(List<String> values) {
            addCriterion("spu_id in", values, "spuId");
            return (Criteria) this;
        }

        public Criteria andSpuIdNotIn(List<String> values) {
            addCriterion("spu_id not in", values, "spuId");
            return (Criteria) this;
        }

        public Criteria andSpuIdBetween(String value1, String value2) {
            addCriterion("spu_id between", value1, value2, "spuId");
            return (Criteria) this;
        }

        public Criteria andSpuIdNotBetween(String value1, String value2) {
            addCriterion("spu_id not between", value1, value2, "spuId");
            return (Criteria) this;
        }

        public Criteria andAdWordsIsNull() {
            addCriterion("ad_words is null");
            return (Criteria) this;
        }

        public Criteria andAdWordsIsNotNull() {
            addCriterion("ad_words is not null");
            return (Criteria) this;
        }

        public Criteria andAdWordsEqualTo(String value) {
            addCriterion("ad_words =", value, "adWords");
            return (Criteria) this;
        }

        public Criteria andAdWordsNotEqualTo(String value) {
            addCriterion("ad_words <>", value, "adWords");
            return (Criteria) this;
        }

        public Criteria andAdWordsGreaterThan(String value) {
            addCriterion("ad_words >", value, "adWords");
            return (Criteria) this;
        }

        public Criteria andAdWordsGreaterThanOrEqualTo(String value) {
            addCriterion("ad_words >=", value, "adWords");
            return (Criteria) this;
        }

        public Criteria andAdWordsLessThan(String value) {
            addCriterion("ad_words <", value, "adWords");
            return (Criteria) this;
        }

        public Criteria andAdWordsLessThanOrEqualTo(String value) {
            addCriterion("ad_words <=", value, "adWords");
            return (Criteria) this;
        }

        public Criteria andAdWordsLike(String value) {
            addCriterion("ad_words like", value, "adWords");
            return (Criteria) this;
        }

        public Criteria andAdWordsNotLike(String value) {
            addCriterion("ad_words not like", value, "adWords");
            return (Criteria) this;
        }

        public Criteria andAdWordsIn(List<String> values) {
            addCriterion("ad_words in", values, "adWords");
            return (Criteria) this;
        }

        public Criteria andAdWordsNotIn(List<String> values) {
            addCriterion("ad_words not in", values, "adWords");
            return (Criteria) this;
        }

        public Criteria andAdWordsBetween(String value1, String value2) {
            addCriterion("ad_words between", value1, value2, "adWords");
            return (Criteria) this;
        }

        public Criteria andAdWordsNotBetween(String value1, String value2) {
            addCriterion("ad_words not between", value1, value2, "adWords");
            return (Criteria) this;
        }

        public Criteria andAppVideoTimeIsNull() {
            addCriterion("app_video_time is null");
            return (Criteria) this;
        }

        public Criteria andAppVideoTimeIsNotNull() {
            addCriterion("app_video_time is not null");
            return (Criteria) this;
        }

        public Criteria andAppVideoTimeEqualTo(Long value) {
            addCriterion("app_video_time =", value, "appVideoTime");
            return (Criteria) this;
        }

        public Criteria andAppVideoTimeNotEqualTo(Long value) {
            addCriterion("app_video_time <>", value, "appVideoTime");
            return (Criteria) this;
        }

        public Criteria andAppVideoTimeGreaterThan(Long value) {
            addCriterion("app_video_time >", value, "appVideoTime");
            return (Criteria) this;
        }

        public Criteria andAppVideoTimeGreaterThanOrEqualTo(Long value) {
            addCriterion("app_video_time >=", value, "appVideoTime");
            return (Criteria) this;
        }

        public Criteria andAppVideoTimeLessThan(Long value) {
            addCriterion("app_video_time <", value, "appVideoTime");
            return (Criteria) this;
        }

        public Criteria andAppVideoTimeLessThanOrEqualTo(Long value) {
            addCriterion("app_video_time <=", value, "appVideoTime");
            return (Criteria) this;
        }

        public Criteria andAppVideoTimeIn(List<Long> values) {
            addCriterion("app_video_time in", values, "appVideoTime");
            return (Criteria) this;
        }

        public Criteria andAppVideoTimeNotIn(List<Long> values) {
            addCriterion("app_video_time not in", values, "appVideoTime");
            return (Criteria) this;
        }

        public Criteria andAppVideoTimeBetween(Long value1, Long value2) {
            addCriterion("app_video_time between", value1, value2, "appVideoTime");
            return (Criteria) this;
        }

        public Criteria andAppVideoTimeNotBetween(Long value1, Long value2) {
            addCriterion("app_video_time not between", value1, value2, "appVideoTime");
            return (Criteria) this;
        }

        public Criteria andAppVideoUrlIsNull() {
            addCriterion("app_video_url is null");
            return (Criteria) this;
        }

        public Criteria andAppVideoUrlIsNotNull() {
            addCriterion("app_video_url is not null");
            return (Criteria) this;
        }

        public Criteria andAppVideoUrlEqualTo(String value) {
            addCriterion("app_video_url =", value, "appVideoUrl");
            return (Criteria) this;
        }

        public Criteria andAppVideoUrlNotEqualTo(String value) {
            addCriterion("app_video_url <>", value, "appVideoUrl");
            return (Criteria) this;
        }

        public Criteria andAppVideoUrlGreaterThan(String value) {
            addCriterion("app_video_url >", value, "appVideoUrl");
            return (Criteria) this;
        }

        public Criteria andAppVideoUrlGreaterThanOrEqualTo(String value) {
            addCriterion("app_video_url >=", value, "appVideoUrl");
            return (Criteria) this;
        }

        public Criteria andAppVideoUrlLessThan(String value) {
            addCriterion("app_video_url <", value, "appVideoUrl");
            return (Criteria) this;
        }

        public Criteria andAppVideoUrlLessThanOrEqualTo(String value) {
            addCriterion("app_video_url <=", value, "appVideoUrl");
            return (Criteria) this;
        }

        public Criteria andAppVideoUrlLike(String value) {
            addCriterion("app_video_url like", value, "appVideoUrl");
            return (Criteria) this;
        }

        public Criteria andAppVideoUrlNotLike(String value) {
            addCriterion("app_video_url not like", value, "appVideoUrl");
            return (Criteria) this;
        }

        public Criteria andAppVideoUrlIn(List<String> values) {
            addCriterion("app_video_url in", values, "appVideoUrl");
            return (Criteria) this;
        }

        public Criteria andAppVideoUrlNotIn(List<String> values) {
            addCriterion("app_video_url not in", values, "appVideoUrl");
            return (Criteria) this;
        }

        public Criteria andAppVideoUrlBetween(String value1, String value2) {
            addCriterion("app_video_url between", value1, value2, "appVideoUrl");
            return (Criteria) this;
        }

        public Criteria andAppVideoUrlNotBetween(String value1, String value2) {
            addCriterion("app_video_url not between", value1, value2, "appVideoUrl");
            return (Criteria) this;
        }

        public Criteria andCanPurchaseIsNull() {
            addCriterion("can_purchase is null");
            return (Criteria) this;
        }

        public Criteria andCanPurchaseIsNotNull() {
            addCriterion("can_purchase is not null");
            return (Criteria) this;
        }

        public Criteria andCanPurchaseEqualTo(Boolean value) {
            addCriterion("can_purchase =", value, "canPurchase");
            return (Criteria) this;
        }

        public Criteria andCanPurchaseNotEqualTo(Boolean value) {
            addCriterion("can_purchase <>", value, "canPurchase");
            return (Criteria) this;
        }

        public Criteria andCanPurchaseGreaterThan(Boolean value) {
            addCriterion("can_purchase >", value, "canPurchase");
            return (Criteria) this;
        }

        public Criteria andCanPurchaseGreaterThanOrEqualTo(Boolean value) {
            addCriterion("can_purchase >=", value, "canPurchase");
            return (Criteria) this;
        }

        public Criteria andCanPurchaseLessThan(Boolean value) {
            addCriterion("can_purchase <", value, "canPurchase");
            return (Criteria) this;
        }

        public Criteria andCanPurchaseLessThanOrEqualTo(Boolean value) {
            addCriterion("can_purchase <=", value, "canPurchase");
            return (Criteria) this;
        }

        public Criteria andCanPurchaseIn(List<Boolean> values) {
            addCriterion("can_purchase in", values, "canPurchase");
            return (Criteria) this;
        }

        public Criteria andCanPurchaseNotIn(List<Boolean> values) {
            addCriterion("can_purchase not in", values, "canPurchase");
            return (Criteria) this;
        }

        public Criteria andCanPurchaseBetween(Boolean value1, Boolean value2) {
            addCriterion("can_purchase between", value1, value2, "canPurchase");
            return (Criteria) this;
        }

        public Criteria andCanPurchaseNotBetween(Boolean value1, Boolean value2) {
            addCriterion("can_purchase not between", value1, value2, "canPurchase");
            return (Criteria) this;
        }

        public Criteria andBrandIsNull() {
            addCriterion("brand is null");
            return (Criteria) this;
        }

        public Criteria andBrandIsNotNull() {
            addCriterion("brand is not null");
            return (Criteria) this;
        }

        public Criteria andBrandEqualTo(String value) {
            addCriterion("brand =", value, "brand");
            return (Criteria) this;
        }

        public Criteria andBrandNotEqualTo(String value) {
            addCriterion("brand <>", value, "brand");
            return (Criteria) this;
        }

        public Criteria andBrandGreaterThan(String value) {
            addCriterion("brand >", value, "brand");
            return (Criteria) this;
        }

        public Criteria andBrandGreaterThanOrEqualTo(String value) {
            addCriterion("brand >=", value, "brand");
            return (Criteria) this;
        }

        public Criteria andBrandLessThan(String value) {
            addCriterion("brand <", value, "brand");
            return (Criteria) this;
        }

        public Criteria andBrandLessThanOrEqualTo(String value) {
            addCriterion("brand <=", value, "brand");
            return (Criteria) this;
        }

        public Criteria andBrandLike(String value) {
            addCriterion("brand like", value, "brand");
            return (Criteria) this;
        }

        public Criteria andBrandNotLike(String value) {
            addCriterion("brand not like", value, "brand");
            return (Criteria) this;
        }

        public Criteria andBrandIn(List<String> values) {
            addCriterion("brand in", values, "brand");
            return (Criteria) this;
        }

        public Criteria andBrandNotIn(List<String> values) {
            addCriterion("brand not in", values, "brand");
            return (Criteria) this;
        }

        public Criteria andBrandBetween(String value1, String value2) {
            addCriterion("brand between", value1, value2, "brand");
            return (Criteria) this;
        }

        public Criteria andBrandNotBetween(String value1, String value2) {
            addCriterion("brand not between", value1, value2, "brand");
            return (Criteria) this;
        }

        public Criteria andOriginalSkuIsNull() {
            addCriterion("original_sku is null");
            return (Criteria) this;
        }

        public Criteria andOriginalSkuIsNotNull() {
            addCriterion("original_sku is not null");
            return (Criteria) this;
        }

        public Criteria andOriginalSkuEqualTo(String value) {
            addCriterion("original_sku =", value, "originalSku");
            return (Criteria) this;
        }

        public Criteria andOriginalSkuNotEqualTo(String value) {
            addCriterion("original_sku <>", value, "originalSku");
            return (Criteria) this;
        }

        public Criteria andOriginalSkuGreaterThan(String value) {
            addCriterion("original_sku >", value, "originalSku");
            return (Criteria) this;
        }

        public Criteria andOriginalSkuGreaterThanOrEqualTo(String value) {
            addCriterion("original_sku >=", value, "originalSku");
            return (Criteria) this;
        }

        public Criteria andOriginalSkuLessThan(String value) {
            addCriterion("original_sku <", value, "originalSku");
            return (Criteria) this;
        }

        public Criteria andOriginalSkuLessThanOrEqualTo(String value) {
            addCriterion("original_sku <=", value, "originalSku");
            return (Criteria) this;
        }

        public Criteria andOriginalSkuLike(String value) {
            addCriterion("original_sku like", value, "originalSku");
            return (Criteria) this;
        }

        public Criteria andOriginalSkuNotLike(String value) {
            addCriterion("original_sku not like", value, "originalSku");
            return (Criteria) this;
        }

        public Criteria andOriginalSkuIn(List<String> values) {
            addCriterion("original_sku in", values, "originalSku");
            return (Criteria) this;
        }

        public Criteria andOriginalSkuNotIn(List<String> values) {
            addCriterion("original_sku not in", values, "originalSku");
            return (Criteria) this;
        }

        public Criteria andOriginalSkuBetween(String value1, String value2) {
            addCriterion("original_sku between", value1, value2, "originalSku");
            return (Criteria) this;
        }

        public Criteria andOriginalSkuNotBetween(String value1, String value2) {
            addCriterion("original_sku not between", value1, value2, "originalSku");
            return (Criteria) this;
        }

        public Criteria andOriginaPlaceIsNull() {
            addCriterion("origina_place is null");
            return (Criteria) this;
        }

        public Criteria andOriginaPlaceIsNotNull() {
            addCriterion("origina_place is not null");
            return (Criteria) this;
        }

        public Criteria andOriginaPlaceEqualTo(String value) {
            addCriterion("origina_place =", value, "originaPlace");
            return (Criteria) this;
        }

        public Criteria andOriginaPlaceNotEqualTo(String value) {
            addCriterion("origina_place <>", value, "originaPlace");
            return (Criteria) this;
        }

        public Criteria andOriginaPlaceGreaterThan(String value) {
            addCriterion("origina_place >", value, "originaPlace");
            return (Criteria) this;
        }

        public Criteria andOriginaPlaceGreaterThanOrEqualTo(String value) {
            addCriterion("origina_place >=", value, "originaPlace");
            return (Criteria) this;
        }

        public Criteria andOriginaPlaceLessThan(String value) {
            addCriterion("origina_place <", value, "originaPlace");
            return (Criteria) this;
        }

        public Criteria andOriginaPlaceLessThanOrEqualTo(String value) {
            addCriterion("origina_place <=", value, "originaPlace");
            return (Criteria) this;
        }

        public Criteria andOriginaPlaceLike(String value) {
            addCriterion("origina_place like", value, "originaPlace");
            return (Criteria) this;
        }

        public Criteria andOriginaPlaceNotLike(String value) {
            addCriterion("origina_place not like", value, "originaPlace");
            return (Criteria) this;
        }

        public Criteria andOriginaPlaceIn(List<String> values) {
            addCriterion("origina_place in", values, "originaPlace");
            return (Criteria) this;
        }

        public Criteria andOriginaPlaceNotIn(List<String> values) {
            addCriterion("origina_place not in", values, "originaPlace");
            return (Criteria) this;
        }

        public Criteria andOriginaPlaceBetween(String value1, String value2) {
            addCriterion("origina_place between", value1, value2, "originaPlace");
            return (Criteria) this;
        }

        public Criteria andOriginaPlaceNotBetween(String value1, String value2) {
            addCriterion("origina_place not between", value1, value2, "originaPlace");
            return (Criteria) this;
        }

        public Criteria andRankIsNull() {
            addCriterion("rank is null");
            return (Criteria) this;
        }

        public Criteria andRankIsNotNull() {
            addCriterion("rank is not null");
            return (Criteria) this;
        }

        public Criteria andRankEqualTo(Integer value) {
            addCriterion("rank =", value, "rank");
            return (Criteria) this;
        }

        public Criteria andRankNotEqualTo(Integer value) {
            addCriterion("rank <>", value, "rank");
            return (Criteria) this;
        }

        public Criteria andRankGreaterThan(Integer value) {
            addCriterion("rank >", value, "rank");
            return (Criteria) this;
        }

        public Criteria andRankGreaterThanOrEqualTo(Integer value) {
            addCriterion("rank >=", value, "rank");
            return (Criteria) this;
        }

        public Criteria andRankLessThan(Integer value) {
            addCriterion("rank <", value, "rank");
            return (Criteria) this;
        }

        public Criteria andRankLessThanOrEqualTo(Integer value) {
            addCriterion("rank <=", value, "rank");
            return (Criteria) this;
        }

        public Criteria andRankIn(List<Integer> values) {
            addCriterion("rank in", values, "rank");
            return (Criteria) this;
        }

        public Criteria andRankNotIn(List<Integer> values) {
            addCriterion("rank not in", values, "rank");
            return (Criteria) this;
        }

        public Criteria andRankBetween(Integer value1, Integer value2) {
            addCriterion("rank between", value1, value2, "rank");
            return (Criteria) this;
        }

        public Criteria andRankNotBetween(Integer value1, Integer value2) {
            addCriterion("rank not between", value1, value2, "rank");
            return (Criteria) this;
        }

        public Criteria andRateMileIsNull() {
            addCriterion("rate_mile is null");
            return (Criteria) this;
        }

        public Criteria andRateMileIsNotNull() {
            addCriterion("rate_mile is not null");
            return (Criteria) this;
        }

        public Criteria andRateMileEqualTo(Long value) {
            addCriterion("rate_mile =", value, "rateMile");
            return (Criteria) this;
        }

        public Criteria andRateMileNotEqualTo(Long value) {
            addCriterion("rate_mile <>", value, "rateMile");
            return (Criteria) this;
        }

        public Criteria andRateMileGreaterThan(Long value) {
            addCriterion("rate_mile >", value, "rateMile");
            return (Criteria) this;
        }

        public Criteria andRateMileGreaterThanOrEqualTo(Long value) {
            addCriterion("rate_mile >=", value, "rateMile");
            return (Criteria) this;
        }

        public Criteria andRateMileLessThan(Long value) {
            addCriterion("rate_mile <", value, "rateMile");
            return (Criteria) this;
        }

        public Criteria andRateMileLessThanOrEqualTo(Long value) {
            addCriterion("rate_mile <=", value, "rateMile");
            return (Criteria) this;
        }

        public Criteria andRateMileIn(List<Long> values) {
            addCriterion("rate_mile in", values, "rateMile");
            return (Criteria) this;
        }

        public Criteria andRateMileNotIn(List<Long> values) {
            addCriterion("rate_mile not in", values, "rateMile");
            return (Criteria) this;
        }

        public Criteria andRateMileBetween(Long value1, Long value2) {
            addCriterion("rate_mile between", value1, value2, "rateMile");
            return (Criteria) this;
        }

        public Criteria andRateMileNotBetween(Long value1, Long value2) {
            addCriterion("rate_mile not between", value1, value2, "rateMile");
            return (Criteria) this;
        }

        public Criteria andRateNumberIsNull() {
            addCriterion("rate_number is null");
            return (Criteria) this;
        }

        public Criteria andRateNumberIsNotNull() {
            addCriterion("rate_number is not null");
            return (Criteria) this;
        }

        public Criteria andRateNumberEqualTo(Integer value) {
            addCriterion("rate_number =", value, "rateNumber");
            return (Criteria) this;
        }

        public Criteria andRateNumberNotEqualTo(Integer value) {
            addCriterion("rate_number <>", value, "rateNumber");
            return (Criteria) this;
        }

        public Criteria andRateNumberGreaterThan(Integer value) {
            addCriterion("rate_number >", value, "rateNumber");
            return (Criteria) this;
        }

        public Criteria andRateNumberGreaterThanOrEqualTo(Integer value) {
            addCriterion("rate_number >=", value, "rateNumber");
            return (Criteria) this;
        }

        public Criteria andRateNumberLessThan(Integer value) {
            addCriterion("rate_number <", value, "rateNumber");
            return (Criteria) this;
        }

        public Criteria andRateNumberLessThanOrEqualTo(Integer value) {
            addCriterion("rate_number <=", value, "rateNumber");
            return (Criteria) this;
        }

        public Criteria andRateNumberIn(List<Integer> values) {
            addCriterion("rate_number in", values, "rateNumber");
            return (Criteria) this;
        }

        public Criteria andRateNumberNotIn(List<Integer> values) {
            addCriterion("rate_number not in", values, "rateNumber");
            return (Criteria) this;
        }

        public Criteria andRateNumberBetween(Integer value1, Integer value2) {
            addCriterion("rate_number between", value1, value2, "rateNumber");
            return (Criteria) this;
        }

        public Criteria andRateNumberNotBetween(Integer value1, Integer value2) {
            addCriterion("rate_number not between", value1, value2, "rateNumber");
            return (Criteria) this;
        }

        public Criteria andRateSourceIsNull() {
            addCriterion("rate_source is null");
            return (Criteria) this;
        }

        public Criteria andRateSourceIsNotNull() {
            addCriterion("rate_source is not null");
            return (Criteria) this;
        }

        public Criteria andRateSourceEqualTo(String value) {
            addCriterion("rate_source =", value, "rateSource");
            return (Criteria) this;
        }

        public Criteria andRateSourceNotEqualTo(String value) {
            addCriterion("rate_source <>", value, "rateSource");
            return (Criteria) this;
        }

        public Criteria andRateSourceGreaterThan(String value) {
            addCriterion("rate_source >", value, "rateSource");
            return (Criteria) this;
        }

        public Criteria andRateSourceGreaterThanOrEqualTo(String value) {
            addCriterion("rate_source >=", value, "rateSource");
            return (Criteria) this;
        }

        public Criteria andRateSourceLessThan(String value) {
            addCriterion("rate_source <", value, "rateSource");
            return (Criteria) this;
        }

        public Criteria andRateSourceLessThanOrEqualTo(String value) {
            addCriterion("rate_source <=", value, "rateSource");
            return (Criteria) this;
        }

        public Criteria andRateSourceLike(String value) {
            addCriterion("rate_source like", value, "rateSource");
            return (Criteria) this;
        }

        public Criteria andRateSourceNotLike(String value) {
            addCriterion("rate_source not like", value, "rateSource");
            return (Criteria) this;
        }

        public Criteria andRateSourceIn(List<String> values) {
            addCriterion("rate_source in", values, "rateSource");
            return (Criteria) this;
        }

        public Criteria andRateSourceNotIn(List<String> values) {
            addCriterion("rate_source not in", values, "rateSource");
            return (Criteria) this;
        }

        public Criteria andRateSourceBetween(String value1, String value2) {
            addCriterion("rate_source between", value1, value2, "rateSource");
            return (Criteria) this;
        }

        public Criteria andRateSourceNotBetween(String value1, String value2) {
            addCriterion("rate_source not between", value1, value2, "rateSource");
            return (Criteria) this;
        }

        public Criteria andRemarkIsNull() {
            addCriterion("remark is null");
            return (Criteria) this;
        }

        public Criteria andRemarkIsNotNull() {
            addCriterion("remark is not null");
            return (Criteria) this;
        }

        public Criteria andRemarkEqualTo(String value) {
            addCriterion("remark =", value, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkNotEqualTo(String value) {
            addCriterion("remark <>", value, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkGreaterThan(String value) {
            addCriterion("remark >", value, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkGreaterThanOrEqualTo(String value) {
            addCriterion("remark >=", value, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkLessThan(String value) {
            addCriterion("remark <", value, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkLessThanOrEqualTo(String value) {
            addCriterion("remark <=", value, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkLike(String value) {
            addCriterion("remark like", value, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkNotLike(String value) {
            addCriterion("remark not like", value, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkIn(List<String> values) {
            addCriterion("remark in", values, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkNotIn(List<String> values) {
            addCriterion("remark not in", values, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkBetween(String value1, String value2) {
            addCriterion("remark between", value1, value2, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkNotBetween(String value1, String value2) {
            addCriterion("remark not between", value1, value2, "remark");
            return (Criteria) this;
        }

        public Criteria andBuyAgainIsNull() {
            addCriterion("buy_again is null");
            return (Criteria) this;
        }

        public Criteria andBuyAgainIsNotNull() {
            addCriterion("buy_again is not null");
            return (Criteria) this;
        }

        public Criteria andBuyAgainEqualTo(Boolean value) {
            addCriterion("buy_again =", value, "buyAgain");
            return (Criteria) this;
        }

        public Criteria andBuyAgainNotEqualTo(Boolean value) {
            addCriterion("buy_again <>", value, "buyAgain");
            return (Criteria) this;
        }

        public Criteria andBuyAgainGreaterThan(Boolean value) {
            addCriterion("buy_again >", value, "buyAgain");
            return (Criteria) this;
        }

        public Criteria andBuyAgainGreaterThanOrEqualTo(Boolean value) {
            addCriterion("buy_again >=", value, "buyAgain");
            return (Criteria) this;
        }

        public Criteria andBuyAgainLessThan(Boolean value) {
            addCriterion("buy_again <", value, "buyAgain");
            return (Criteria) this;
        }

        public Criteria andBuyAgainLessThanOrEqualTo(Boolean value) {
            addCriterion("buy_again <=", value, "buyAgain");
            return (Criteria) this;
        }

        public Criteria andBuyAgainIn(List<Boolean> values) {
            addCriterion("buy_again in", values, "buyAgain");
            return (Criteria) this;
        }

        public Criteria andBuyAgainNotIn(List<Boolean> values) {
            addCriterion("buy_again not in", values, "buyAgain");
            return (Criteria) this;
        }

        public Criteria andBuyAgainBetween(Boolean value1, Boolean value2) {
            addCriterion("buy_again between", value1, value2, "buyAgain");
            return (Criteria) this;
        }

        public Criteria andBuyAgainNotBetween(Boolean value1, Boolean value2) {
            addCriterion("buy_again not between", value1, value2, "buyAgain");
            return (Criteria) this;
        }

        public Criteria andLabelIsNull() {
            addCriterion("label is null");
            return (Criteria) this;
        }

        public Criteria andLabelIsNotNull() {
            addCriterion("label is not null");
            return (Criteria) this;
        }

        public Criteria andLabelEqualTo(String value) {
            addCriterion("label =", value, "label");
            return (Criteria) this;
        }

        public Criteria andLabelNotEqualTo(String value) {
            addCriterion("label <>", value, "label");
            return (Criteria) this;
        }

        public Criteria andLabelGreaterThan(String value) {
            addCriterion("label >", value, "label");
            return (Criteria) this;
        }

        public Criteria andLabelGreaterThanOrEqualTo(String value) {
            addCriterion("label >=", value, "label");
            return (Criteria) this;
        }

        public Criteria andLabelLessThan(String value) {
            addCriterion("label <", value, "label");
            return (Criteria) this;
        }

        public Criteria andLabelLessThanOrEqualTo(String value) {
            addCriterion("label <=", value, "label");
            return (Criteria) this;
        }

        public Criteria andLabelLike(String value) {
            addCriterion("label like", value, "label");
            return (Criteria) this;
        }

        public Criteria andLabelNotLike(String value) {
            addCriterion("label not like", value, "label");
            return (Criteria) this;
        }

        public Criteria andLabelIn(List<String> values) {
            addCriterion("label in", values, "label");
            return (Criteria) this;
        }

        public Criteria andLabelNotIn(List<String> values) {
            addCriterion("label not in", values, "label");
            return (Criteria) this;
        }

        public Criteria andLabelBetween(String value1, String value2) {
            addCriterion("label between", value1, value2, "label");
            return (Criteria) this;
        }

        public Criteria andLabelNotBetween(String value1, String value2) {
            addCriterion("label not between", value1, value2, "label");
            return (Criteria) this;
        }

        public Criteria andTireAspectRatioIsNull() {
            addCriterion("tire_aspect_ratio is null");
            return (Criteria) this;
        }

        public Criteria andTireAspectRatioIsNotNull() {
            addCriterion("tire_aspect_ratio is not null");
            return (Criteria) this;
        }

        public Criteria andTireAspectRatioEqualTo(String value) {
            addCriterion("tire_aspect_ratio =", value, "tireAspectRatio");
            return (Criteria) this;
        }

        public Criteria andTireAspectRatioNotEqualTo(String value) {
            addCriterion("tire_aspect_ratio <>", value, "tireAspectRatio");
            return (Criteria) this;
        }

        public Criteria andTireAspectRatioGreaterThan(String value) {
            addCriterion("tire_aspect_ratio >", value, "tireAspectRatio");
            return (Criteria) this;
        }

        public Criteria andTireAspectRatioGreaterThanOrEqualTo(String value) {
            addCriterion("tire_aspect_ratio >=", value, "tireAspectRatio");
            return (Criteria) this;
        }

        public Criteria andTireAspectRatioLessThan(String value) {
            addCriterion("tire_aspect_ratio <", value, "tireAspectRatio");
            return (Criteria) this;
        }

        public Criteria andTireAspectRatioLessThanOrEqualTo(String value) {
            addCriterion("tire_aspect_ratio <=", value, "tireAspectRatio");
            return (Criteria) this;
        }

        public Criteria andTireAspectRatioLike(String value) {
            addCriterion("tire_aspect_ratio like", value, "tireAspectRatio");
            return (Criteria) this;
        }

        public Criteria andTireAspectRatioNotLike(String value) {
            addCriterion("tire_aspect_ratio not like", value, "tireAspectRatio");
            return (Criteria) this;
        }

        public Criteria andTireAspectRatioIn(List<String> values) {
            addCriterion("tire_aspect_ratio in", values, "tireAspectRatio");
            return (Criteria) this;
        }

        public Criteria andTireAspectRatioNotIn(List<String> values) {
            addCriterion("tire_aspect_ratio not in", values, "tireAspectRatio");
            return (Criteria) this;
        }

        public Criteria andTireAspectRatioBetween(String value1, String value2) {
            addCriterion("tire_aspect_ratio between", value1, value2, "tireAspectRatio");
            return (Criteria) this;
        }

        public Criteria andTireAspectRatioNotBetween(String value1, String value2) {
            addCriterion("tire_aspect_ratio not between", value1, value2, "tireAspectRatio");
            return (Criteria) this;
        }

        public Criteria andTireLoadIndexIsNull() {
            addCriterion("tire_load_index is null");
            return (Criteria) this;
        }

        public Criteria andTireLoadIndexIsNotNull() {
            addCriterion("tire_load_index is not null");
            return (Criteria) this;
        }

        public Criteria andTireLoadIndexEqualTo(String value) {
            addCriterion("tire_load_index =", value, "tireLoadIndex");
            return (Criteria) this;
        }

        public Criteria andTireLoadIndexNotEqualTo(String value) {
            addCriterion("tire_load_index <>", value, "tireLoadIndex");
            return (Criteria) this;
        }

        public Criteria andTireLoadIndexGreaterThan(String value) {
            addCriterion("tire_load_index >", value, "tireLoadIndex");
            return (Criteria) this;
        }

        public Criteria andTireLoadIndexGreaterThanOrEqualTo(String value) {
            addCriterion("tire_load_index >=", value, "tireLoadIndex");
            return (Criteria) this;
        }

        public Criteria andTireLoadIndexLessThan(String value) {
            addCriterion("tire_load_index <", value, "tireLoadIndex");
            return (Criteria) this;
        }

        public Criteria andTireLoadIndexLessThanOrEqualTo(String value) {
            addCriterion("tire_load_index <=", value, "tireLoadIndex");
            return (Criteria) this;
        }

        public Criteria andTireLoadIndexLike(String value) {
            addCriterion("tire_load_index like", value, "tireLoadIndex");
            return (Criteria) this;
        }

        public Criteria andTireLoadIndexNotLike(String value) {
            addCriterion("tire_load_index not like", value, "tireLoadIndex");
            return (Criteria) this;
        }

        public Criteria andTireLoadIndexIn(List<String> values) {
            addCriterion("tire_load_index in", values, "tireLoadIndex");
            return (Criteria) this;
        }

        public Criteria andTireLoadIndexNotIn(List<String> values) {
            addCriterion("tire_load_index not in", values, "tireLoadIndex");
            return (Criteria) this;
        }

        public Criteria andTireLoadIndexBetween(String value1, String value2) {
            addCriterion("tire_load_index between", value1, value2, "tireLoadIndex");
            return (Criteria) this;
        }

        public Criteria andTireLoadIndexNotBetween(String value1, String value2) {
            addCriterion("tire_load_index not between", value1, value2, "tireLoadIndex");
            return (Criteria) this;
        }

        public Criteria andTirePatternIsNull() {
            addCriterion("tire_pattern is null");
            return (Criteria) this;
        }

        public Criteria andTirePatternIsNotNull() {
            addCriterion("tire_pattern is not null");
            return (Criteria) this;
        }

        public Criteria andTirePatternEqualTo(String value) {
            addCriterion("tire_pattern =", value, "tirePattern");
            return (Criteria) this;
        }

        public Criteria andTirePatternNotEqualTo(String value) {
            addCriterion("tire_pattern <>", value, "tirePattern");
            return (Criteria) this;
        }

        public Criteria andTirePatternGreaterThan(String value) {
            addCriterion("tire_pattern >", value, "tirePattern");
            return (Criteria) this;
        }

        public Criteria andTirePatternGreaterThanOrEqualTo(String value) {
            addCriterion("tire_pattern >=", value, "tirePattern");
            return (Criteria) this;
        }

        public Criteria andTirePatternLessThan(String value) {
            addCriterion("tire_pattern <", value, "tirePattern");
            return (Criteria) this;
        }

        public Criteria andTirePatternLessThanOrEqualTo(String value) {
            addCriterion("tire_pattern <=", value, "tirePattern");
            return (Criteria) this;
        }

        public Criteria andTirePatternLike(String value) {
            addCriterion("tire_pattern like", value, "tirePattern");
            return (Criteria) this;
        }

        public Criteria andTirePatternNotLike(String value) {
            addCriterion("tire_pattern not like", value, "tirePattern");
            return (Criteria) this;
        }

        public Criteria andTirePatternIn(List<String> values) {
            addCriterion("tire_pattern in", values, "tirePattern");
            return (Criteria) this;
        }

        public Criteria andTirePatternNotIn(List<String> values) {
            addCriterion("tire_pattern not in", values, "tirePattern");
            return (Criteria) this;
        }

        public Criteria andTirePatternBetween(String value1, String value2) {
            addCriterion("tire_pattern between", value1, value2, "tirePattern");
            return (Criteria) this;
        }

        public Criteria andTirePatternNotBetween(String value1, String value2) {
            addCriterion("tire_pattern not between", value1, value2, "tirePattern");
            return (Criteria) this;
        }

        public Criteria andTireRemarkIsNull() {
            addCriterion("tire_remark is null");
            return (Criteria) this;
        }

        public Criteria andTireRemarkIsNotNull() {
            addCriterion("tire_remark is not null");
            return (Criteria) this;
        }

        public Criteria andTireRemarkEqualTo(String value) {
            addCriterion("tire_remark =", value, "tireRemark");
            return (Criteria) this;
        }

        public Criteria andTireRemarkNotEqualTo(String value) {
            addCriterion("tire_remark <>", value, "tireRemark");
            return (Criteria) this;
        }

        public Criteria andTireRemarkGreaterThan(String value) {
            addCriterion("tire_remark >", value, "tireRemark");
            return (Criteria) this;
        }

        public Criteria andTireRemarkGreaterThanOrEqualTo(String value) {
            addCriterion("tire_remark >=", value, "tireRemark");
            return (Criteria) this;
        }

        public Criteria andTireRemarkLessThan(String value) {
            addCriterion("tire_remark <", value, "tireRemark");
            return (Criteria) this;
        }

        public Criteria andTireRemarkLessThanOrEqualTo(String value) {
            addCriterion("tire_remark <=", value, "tireRemark");
            return (Criteria) this;
        }

        public Criteria andTireRemarkLike(String value) {
            addCriterion("tire_remark like", value, "tireRemark");
            return (Criteria) this;
        }

        public Criteria andTireRemarkNotLike(String value) {
            addCriterion("tire_remark not like", value, "tireRemark");
            return (Criteria) this;
        }

        public Criteria andTireRemarkIn(List<String> values) {
            addCriterion("tire_remark in", values, "tireRemark");
            return (Criteria) this;
        }

        public Criteria andTireRemarkNotIn(List<String> values) {
            addCriterion("tire_remark not in", values, "tireRemark");
            return (Criteria) this;
        }

        public Criteria andTireRemarkBetween(String value1, String value2) {
            addCriterion("tire_remark between", value1, value2, "tireRemark");
            return (Criteria) this;
        }

        public Criteria andTireRemarkNotBetween(String value1, String value2) {
            addCriterion("tire_remark not between", value1, value2, "tireRemark");
            return (Criteria) this;
        }

        public Criteria andTireRimIsNull() {
            addCriterion("tire_rim is null");
            return (Criteria) this;
        }

        public Criteria andTireRimIsNotNull() {
            addCriterion("tire_rim is not null");
            return (Criteria) this;
        }

        public Criteria andTireRimEqualTo(String value) {
            addCriterion("tire_rim =", value, "tireRim");
            return (Criteria) this;
        }

        public Criteria andTireRimNotEqualTo(String value) {
            addCriterion("tire_rim <>", value, "tireRim");
            return (Criteria) this;
        }

        public Criteria andTireRimGreaterThan(String value) {
            addCriterion("tire_rim >", value, "tireRim");
            return (Criteria) this;
        }

        public Criteria andTireRimGreaterThanOrEqualTo(String value) {
            addCriterion("tire_rim >=", value, "tireRim");
            return (Criteria) this;
        }

        public Criteria andTireRimLessThan(String value) {
            addCriterion("tire_rim <", value, "tireRim");
            return (Criteria) this;
        }

        public Criteria andTireRimLessThanOrEqualTo(String value) {
            addCriterion("tire_rim <=", value, "tireRim");
            return (Criteria) this;
        }

        public Criteria andTireRimLike(String value) {
            addCriterion("tire_rim like", value, "tireRim");
            return (Criteria) this;
        }

        public Criteria andTireRimNotLike(String value) {
            addCriterion("tire_rim not like", value, "tireRim");
            return (Criteria) this;
        }

        public Criteria andTireRimIn(List<String> values) {
            addCriterion("tire_rim in", values, "tireRim");
            return (Criteria) this;
        }

        public Criteria andTireRimNotIn(List<String> values) {
            addCriterion("tire_rim not in", values, "tireRim");
            return (Criteria) this;
        }

        public Criteria andTireRimBetween(String value1, String value2) {
            addCriterion("tire_rim between", value1, value2, "tireRim");
            return (Criteria) this;
        }

        public Criteria andTireRimNotBetween(String value1, String value2) {
            addCriterion("tire_rim not between", value1, value2, "tireRim");
            return (Criteria) this;
        }

        public Criteria andTireRofIsNull() {
            addCriterion("tire_rof is null");
            return (Criteria) this;
        }

        public Criteria andTireRofIsNotNull() {
            addCriterion("tire_rof is not null");
            return (Criteria) this;
        }

        public Criteria andTireRofEqualTo(String value) {
            addCriterion("tire_rof =", value, "tireRof");
            return (Criteria) this;
        }

        public Criteria andTireRofNotEqualTo(String value) {
            addCriterion("tire_rof <>", value, "tireRof");
            return (Criteria) this;
        }

        public Criteria andTireRofGreaterThan(String value) {
            addCriterion("tire_rof >", value, "tireRof");
            return (Criteria) this;
        }

        public Criteria andTireRofGreaterThanOrEqualTo(String value) {
            addCriterion("tire_rof >=", value, "tireRof");
            return (Criteria) this;
        }

        public Criteria andTireRofLessThan(String value) {
            addCriterion("tire_rof <", value, "tireRof");
            return (Criteria) this;
        }

        public Criteria andTireRofLessThanOrEqualTo(String value) {
            addCriterion("tire_rof <=", value, "tireRof");
            return (Criteria) this;
        }

        public Criteria andTireRofLike(String value) {
            addCriterion("tire_rof like", value, "tireRof");
            return (Criteria) this;
        }

        public Criteria andTireRofNotLike(String value) {
            addCriterion("tire_rof not like", value, "tireRof");
            return (Criteria) this;
        }

        public Criteria andTireRofIn(List<String> values) {
            addCriterion("tire_rof in", values, "tireRof");
            return (Criteria) this;
        }

        public Criteria andTireRofNotIn(List<String> values) {
            addCriterion("tire_rof not in", values, "tireRof");
            return (Criteria) this;
        }

        public Criteria andTireRofBetween(String value1, String value2) {
            addCriterion("tire_rof between", value1, value2, "tireRof");
            return (Criteria) this;
        }

        public Criteria andTireRofNotBetween(String value1, String value2) {
            addCriterion("tire_rof not between", value1, value2, "tireRof");
            return (Criteria) this;
        }

        public Criteria andTireCorneringstabilityIsNull() {
            addCriterion("tire_corneringstability is null");
            return (Criteria) this;
        }

        public Criteria andTireCorneringstabilityIsNotNull() {
            addCriterion("tire_corneringstability is not null");
            return (Criteria) this;
        }

        public Criteria andTireCorneringstabilityEqualTo(Float value) {
            addCriterion("tire_corneringstability =", value, "tireCorneringstability");
            return (Criteria) this;
        }

        public Criteria andTireCorneringstabilityNotEqualTo(Float value) {
            addCriterion("tire_corneringstability <>", value, "tireCorneringstability");
            return (Criteria) this;
        }

        public Criteria andTireCorneringstabilityGreaterThan(Float value) {
            addCriterion("tire_corneringstability >", value, "tireCorneringstability");
            return (Criteria) this;
        }

        public Criteria andTireCorneringstabilityGreaterThanOrEqualTo(Float value) {
            addCriterion("tire_corneringstability >=", value, "tireCorneringstability");
            return (Criteria) this;
        }

        public Criteria andTireCorneringstabilityLessThan(Float value) {
            addCriterion("tire_corneringstability <", value, "tireCorneringstability");
            return (Criteria) this;
        }

        public Criteria andTireCorneringstabilityLessThanOrEqualTo(Float value) {
            addCriterion("tire_corneringstability <=", value, "tireCorneringstability");
            return (Criteria) this;
        }

        public Criteria andTireCorneringstabilityIn(List<Float> values) {
            addCriterion("tire_corneringstability in", values, "tireCorneringstability");
            return (Criteria) this;
        }

        public Criteria andTireCorneringstabilityNotIn(List<Float> values) {
            addCriterion("tire_corneringstability not in", values, "tireCorneringstability");
            return (Criteria) this;
        }

        public Criteria andTireCorneringstabilityBetween(Float value1, Float value2) {
            addCriterion("tire_corneringstability between", value1, value2, "tireCorneringstability");
            return (Criteria) this;
        }

        public Criteria andTireCorneringstabilityNotBetween(Float value1, Float value2) {
            addCriterion("tire_corneringstability not between", value1, value2, "tireCorneringstability");
            return (Criteria) this;
        }

        public Criteria andTireDeepsnowtractionIsNull() {
            addCriterion("tire_deepsnowtraction is null");
            return (Criteria) this;
        }

        public Criteria andTireDeepsnowtractionIsNotNull() {
            addCriterion("tire_deepsnowtraction is not null");
            return (Criteria) this;
        }

        public Criteria andTireDeepsnowtractionEqualTo(Float value) {
            addCriterion("tire_deepsnowtraction =", value, "tireDeepsnowtraction");
            return (Criteria) this;
        }

        public Criteria andTireDeepsnowtractionNotEqualTo(Float value) {
            addCriterion("tire_deepsnowtraction <>", value, "tireDeepsnowtraction");
            return (Criteria) this;
        }

        public Criteria andTireDeepsnowtractionGreaterThan(Float value) {
            addCriterion("tire_deepsnowtraction >", value, "tireDeepsnowtraction");
            return (Criteria) this;
        }

        public Criteria andTireDeepsnowtractionGreaterThanOrEqualTo(Float value) {
            addCriterion("tire_deepsnowtraction >=", value, "tireDeepsnowtraction");
            return (Criteria) this;
        }

        public Criteria andTireDeepsnowtractionLessThan(Float value) {
            addCriterion("tire_deepsnowtraction <", value, "tireDeepsnowtraction");
            return (Criteria) this;
        }

        public Criteria andTireDeepsnowtractionLessThanOrEqualTo(Float value) {
            addCriterion("tire_deepsnowtraction <=", value, "tireDeepsnowtraction");
            return (Criteria) this;
        }

        public Criteria andTireDeepsnowtractionIn(List<Float> values) {
            addCriterion("tire_deepsnowtraction in", values, "tireDeepsnowtraction");
            return (Criteria) this;
        }

        public Criteria andTireDeepsnowtractionNotIn(List<Float> values) {
            addCriterion("tire_deepsnowtraction not in", values, "tireDeepsnowtraction");
            return (Criteria) this;
        }

        public Criteria andTireDeepsnowtractionBetween(Float value1, Float value2) {
            addCriterion("tire_deepsnowtraction between", value1, value2, "tireDeepsnowtraction");
            return (Criteria) this;
        }

        public Criteria andTireDeepsnowtractionNotBetween(Float value1, Float value2) {
            addCriterion("tire_deepsnowtraction not between", value1, value2, "tireDeepsnowtraction");
            return (Criteria) this;
        }

        public Criteria andTireDrytractionIsNull() {
            addCriterion("tire_drytraction is null");
            return (Criteria) this;
        }

        public Criteria andTireDrytractionIsNotNull() {
            addCriterion("tire_drytraction is not null");
            return (Criteria) this;
        }

        public Criteria andTireDrytractionEqualTo(Float value) {
            addCriterion("tire_drytraction =", value, "tireDrytraction");
            return (Criteria) this;
        }

        public Criteria andTireDrytractionNotEqualTo(Float value) {
            addCriterion("tire_drytraction <>", value, "tireDrytraction");
            return (Criteria) this;
        }

        public Criteria andTireDrytractionGreaterThan(Float value) {
            addCriterion("tire_drytraction >", value, "tireDrytraction");
            return (Criteria) this;
        }

        public Criteria andTireDrytractionGreaterThanOrEqualTo(Float value) {
            addCriterion("tire_drytraction >=", value, "tireDrytraction");
            return (Criteria) this;
        }

        public Criteria andTireDrytractionLessThan(Float value) {
            addCriterion("tire_drytraction <", value, "tireDrytraction");
            return (Criteria) this;
        }

        public Criteria andTireDrytractionLessThanOrEqualTo(Float value) {
            addCriterion("tire_drytraction <=", value, "tireDrytraction");
            return (Criteria) this;
        }

        public Criteria andTireDrytractionIn(List<Float> values) {
            addCriterion("tire_drytraction in", values, "tireDrytraction");
            return (Criteria) this;
        }

        public Criteria andTireDrytractionNotIn(List<Float> values) {
            addCriterion("tire_drytraction not in", values, "tireDrytraction");
            return (Criteria) this;
        }

        public Criteria andTireDrytractionBetween(Float value1, Float value2) {
            addCriterion("tire_drytraction between", value1, value2, "tireDrytraction");
            return (Criteria) this;
        }

        public Criteria andTireDrytractionNotBetween(Float value1, Float value2) {
            addCriterion("tire_drytraction not between", value1, value2, "tireDrytraction");
            return (Criteria) this;
        }

        public Criteria andTireHydroplaningresistanceIsNull() {
            addCriterion("tire_hydroplaningresistance is null");
            return (Criteria) this;
        }

        public Criteria andTireHydroplaningresistanceIsNotNull() {
            addCriterion("tire_hydroplaningresistance is not null");
            return (Criteria) this;
        }

        public Criteria andTireHydroplaningresistanceEqualTo(Float value) {
            addCriterion("tire_hydroplaningresistance =", value, "tireHydroplaningresistance");
            return (Criteria) this;
        }

        public Criteria andTireHydroplaningresistanceNotEqualTo(Float value) {
            addCriterion("tire_hydroplaningresistance <>", value, "tireHydroplaningresistance");
            return (Criteria) this;
        }

        public Criteria andTireHydroplaningresistanceGreaterThan(Float value) {
            addCriterion("tire_hydroplaningresistance >", value, "tireHydroplaningresistance");
            return (Criteria) this;
        }

        public Criteria andTireHydroplaningresistanceGreaterThanOrEqualTo(Float value) {
            addCriterion("tire_hydroplaningresistance >=", value, "tireHydroplaningresistance");
            return (Criteria) this;
        }

        public Criteria andTireHydroplaningresistanceLessThan(Float value) {
            addCriterion("tire_hydroplaningresistance <", value, "tireHydroplaningresistance");
            return (Criteria) this;
        }

        public Criteria andTireHydroplaningresistanceLessThanOrEqualTo(Float value) {
            addCriterion("tire_hydroplaningresistance <=", value, "tireHydroplaningresistance");
            return (Criteria) this;
        }

        public Criteria andTireHydroplaningresistanceIn(List<Float> values) {
            addCriterion("tire_hydroplaningresistance in", values, "tireHydroplaningresistance");
            return (Criteria) this;
        }

        public Criteria andTireHydroplaningresistanceNotIn(List<Float> values) {
            addCriterion("tire_hydroplaningresistance not in", values, "tireHydroplaningresistance");
            return (Criteria) this;
        }

        public Criteria andTireHydroplaningresistanceBetween(Float value1, Float value2) {
            addCriterion("tire_hydroplaningresistance between", value1, value2, "tireHydroplaningresistance");
            return (Criteria) this;
        }

        public Criteria andTireHydroplaningresistanceNotBetween(Float value1, Float value2) {
            addCriterion("tire_hydroplaningresistance not between", value1, value2, "tireHydroplaningresistance");
            return (Criteria) this;
        }

        public Criteria andTireIcetractionIsNull() {
            addCriterion("tire_icetraction is null");
            return (Criteria) this;
        }

        public Criteria andTireIcetractionIsNotNull() {
            addCriterion("tire_icetraction is not null");
            return (Criteria) this;
        }

        public Criteria andTireIcetractionEqualTo(Float value) {
            addCriterion("tire_icetraction =", value, "tireIcetraction");
            return (Criteria) this;
        }

        public Criteria andTireIcetractionNotEqualTo(Float value) {
            addCriterion("tire_icetraction <>", value, "tireIcetraction");
            return (Criteria) this;
        }

        public Criteria andTireIcetractionGreaterThan(Float value) {
            addCriterion("tire_icetraction >", value, "tireIcetraction");
            return (Criteria) this;
        }

        public Criteria andTireIcetractionGreaterThanOrEqualTo(Float value) {
            addCriterion("tire_icetraction >=", value, "tireIcetraction");
            return (Criteria) this;
        }

        public Criteria andTireIcetractionLessThan(Float value) {
            addCriterion("tire_icetraction <", value, "tireIcetraction");
            return (Criteria) this;
        }

        public Criteria andTireIcetractionLessThanOrEqualTo(Float value) {
            addCriterion("tire_icetraction <=", value, "tireIcetraction");
            return (Criteria) this;
        }

        public Criteria andTireIcetractionIn(List<Float> values) {
            addCriterion("tire_icetraction in", values, "tireIcetraction");
            return (Criteria) this;
        }

        public Criteria andTireIcetractionNotIn(List<Float> values) {
            addCriterion("tire_icetraction not in", values, "tireIcetraction");
            return (Criteria) this;
        }

        public Criteria andTireIcetractionBetween(Float value1, Float value2) {
            addCriterion("tire_icetraction between", value1, value2, "tireIcetraction");
            return (Criteria) this;
        }

        public Criteria andTireIcetractionNotBetween(Float value1, Float value2) {
            addCriterion("tire_icetraction not between", value1, value2, "tireIcetraction");
            return (Criteria) this;
        }

        public Criteria andTireLightsnowtractionIsNull() {
            addCriterion("tire_lightsnowtraction is null");
            return (Criteria) this;
        }

        public Criteria andTireLightsnowtractionIsNotNull() {
            addCriterion("tire_lightsnowtraction is not null");
            return (Criteria) this;
        }

        public Criteria andTireLightsnowtractionEqualTo(Float value) {
            addCriterion("tire_lightsnowtraction =", value, "tireLightsnowtraction");
            return (Criteria) this;
        }

        public Criteria andTireLightsnowtractionNotEqualTo(Float value) {
            addCriterion("tire_lightsnowtraction <>", value, "tireLightsnowtraction");
            return (Criteria) this;
        }

        public Criteria andTireLightsnowtractionGreaterThan(Float value) {
            addCriterion("tire_lightsnowtraction >", value, "tireLightsnowtraction");
            return (Criteria) this;
        }

        public Criteria andTireLightsnowtractionGreaterThanOrEqualTo(Float value) {
            addCriterion("tire_lightsnowtraction >=", value, "tireLightsnowtraction");
            return (Criteria) this;
        }

        public Criteria andTireLightsnowtractionLessThan(Float value) {
            addCriterion("tire_lightsnowtraction <", value, "tireLightsnowtraction");
            return (Criteria) this;
        }

        public Criteria andTireLightsnowtractionLessThanOrEqualTo(Float value) {
            addCriterion("tire_lightsnowtraction <=", value, "tireLightsnowtraction");
            return (Criteria) this;
        }

        public Criteria andTireLightsnowtractionIn(List<Float> values) {
            addCriterion("tire_lightsnowtraction in", values, "tireLightsnowtraction");
            return (Criteria) this;
        }

        public Criteria andTireLightsnowtractionNotIn(List<Float> values) {
            addCriterion("tire_lightsnowtraction not in", values, "tireLightsnowtraction");
            return (Criteria) this;
        }

        public Criteria andTireLightsnowtractionBetween(Float value1, Float value2) {
            addCriterion("tire_lightsnowtraction between", value1, value2, "tireLightsnowtraction");
            return (Criteria) this;
        }

        public Criteria andTireLightsnowtractionNotBetween(Float value1, Float value2) {
            addCriterion("tire_lightsnowtraction not between", value1, value2, "tireLightsnowtraction");
            return (Criteria) this;
        }

        public Criteria andTireNoisecomfortIsNull() {
            addCriterion("tire_noisecomfort is null");
            return (Criteria) this;
        }

        public Criteria andTireNoisecomfortIsNotNull() {
            addCriterion("tire_noisecomfort is not null");
            return (Criteria) this;
        }

        public Criteria andTireNoisecomfortEqualTo(Float value) {
            addCriterion("tire_noisecomfort =", value, "tireNoisecomfort");
            return (Criteria) this;
        }

        public Criteria andTireNoisecomfortNotEqualTo(Float value) {
            addCriterion("tire_noisecomfort <>", value, "tireNoisecomfort");
            return (Criteria) this;
        }

        public Criteria andTireNoisecomfortGreaterThan(Float value) {
            addCriterion("tire_noisecomfort >", value, "tireNoisecomfort");
            return (Criteria) this;
        }

        public Criteria andTireNoisecomfortGreaterThanOrEqualTo(Float value) {
            addCriterion("tire_noisecomfort >=", value, "tireNoisecomfort");
            return (Criteria) this;
        }

        public Criteria andTireNoisecomfortLessThan(Float value) {
            addCriterion("tire_noisecomfort <", value, "tireNoisecomfort");
            return (Criteria) this;
        }

        public Criteria andTireNoisecomfortLessThanOrEqualTo(Float value) {
            addCriterion("tire_noisecomfort <=", value, "tireNoisecomfort");
            return (Criteria) this;
        }

        public Criteria andTireNoisecomfortIn(List<Float> values) {
            addCriterion("tire_noisecomfort in", values, "tireNoisecomfort");
            return (Criteria) this;
        }

        public Criteria andTireNoisecomfortNotIn(List<Float> values) {
            addCriterion("tire_noisecomfort not in", values, "tireNoisecomfort");
            return (Criteria) this;
        }

        public Criteria andTireNoisecomfortBetween(Float value1, Float value2) {
            addCriterion("tire_noisecomfort between", value1, value2, "tireNoisecomfort");
            return (Criteria) this;
        }

        public Criteria andTireNoisecomfortNotBetween(Float value1, Float value2) {
            addCriterion("tire_noisecomfort not between", value1, value2, "tireNoisecomfort");
            return (Criteria) this;
        }

        public Criteria andTireRidecomfortIsNull() {
            addCriterion("tire_ridecomfort is null");
            return (Criteria) this;
        }

        public Criteria andTireRidecomfortIsNotNull() {
            addCriterion("tire_ridecomfort is not null");
            return (Criteria) this;
        }

        public Criteria andTireRidecomfortEqualTo(Float value) {
            addCriterion("tire_ridecomfort =", value, "tireRidecomfort");
            return (Criteria) this;
        }

        public Criteria andTireRidecomfortNotEqualTo(Float value) {
            addCriterion("tire_ridecomfort <>", value, "tireRidecomfort");
            return (Criteria) this;
        }

        public Criteria andTireRidecomfortGreaterThan(Float value) {
            addCriterion("tire_ridecomfort >", value, "tireRidecomfort");
            return (Criteria) this;
        }

        public Criteria andTireRidecomfortGreaterThanOrEqualTo(Float value) {
            addCriterion("tire_ridecomfort >=", value, "tireRidecomfort");
            return (Criteria) this;
        }

        public Criteria andTireRidecomfortLessThan(Float value) {
            addCriterion("tire_ridecomfort <", value, "tireRidecomfort");
            return (Criteria) this;
        }

        public Criteria andTireRidecomfortLessThanOrEqualTo(Float value) {
            addCriterion("tire_ridecomfort <=", value, "tireRidecomfort");
            return (Criteria) this;
        }

        public Criteria andTireRidecomfortIn(List<Float> values) {
            addCriterion("tire_ridecomfort in", values, "tireRidecomfort");
            return (Criteria) this;
        }

        public Criteria andTireRidecomfortNotIn(List<Float> values) {
            addCriterion("tire_ridecomfort not in", values, "tireRidecomfort");
            return (Criteria) this;
        }

        public Criteria andTireRidecomfortBetween(Float value1, Float value2) {
            addCriterion("tire_ridecomfort between", value1, value2, "tireRidecomfort");
            return (Criteria) this;
        }

        public Criteria andTireRidecomfortNotBetween(Float value1, Float value2) {
            addCriterion("tire_ridecomfort not between", value1, value2, "tireRidecomfort");
            return (Criteria) this;
        }

        public Criteria andTireSteeringresponseIsNull() {
            addCriterion("tire_steeringresponse is null");
            return (Criteria) this;
        }

        public Criteria andTireSteeringresponseIsNotNull() {
            addCriterion("tire_steeringresponse is not null");
            return (Criteria) this;
        }

        public Criteria andTireSteeringresponseEqualTo(Float value) {
            addCriterion("tire_steeringresponse =", value, "tireSteeringresponse");
            return (Criteria) this;
        }

        public Criteria andTireSteeringresponseNotEqualTo(Float value) {
            addCriterion("tire_steeringresponse <>", value, "tireSteeringresponse");
            return (Criteria) this;
        }

        public Criteria andTireSteeringresponseGreaterThan(Float value) {
            addCriterion("tire_steeringresponse >", value, "tireSteeringresponse");
            return (Criteria) this;
        }

        public Criteria andTireSteeringresponseGreaterThanOrEqualTo(Float value) {
            addCriterion("tire_steeringresponse >=", value, "tireSteeringresponse");
            return (Criteria) this;
        }

        public Criteria andTireSteeringresponseLessThan(Float value) {
            addCriterion("tire_steeringresponse <", value, "tireSteeringresponse");
            return (Criteria) this;
        }

        public Criteria andTireSteeringresponseLessThanOrEqualTo(Float value) {
            addCriterion("tire_steeringresponse <=", value, "tireSteeringresponse");
            return (Criteria) this;
        }

        public Criteria andTireSteeringresponseIn(List<Float> values) {
            addCriterion("tire_steeringresponse in", values, "tireSteeringresponse");
            return (Criteria) this;
        }

        public Criteria andTireSteeringresponseNotIn(List<Float> values) {
            addCriterion("tire_steeringresponse not in", values, "tireSteeringresponse");
            return (Criteria) this;
        }

        public Criteria andTireSteeringresponseBetween(Float value1, Float value2) {
            addCriterion("tire_steeringresponse between", value1, value2, "tireSteeringresponse");
            return (Criteria) this;
        }

        public Criteria andTireSteeringresponseNotBetween(Float value1, Float value2) {
            addCriterion("tire_steeringresponse not between", value1, value2, "tireSteeringresponse");
            return (Criteria) this;
        }

        public Criteria andTireTreadwearIsNull() {
            addCriterion("tire_treadwear is null");
            return (Criteria) this;
        }

        public Criteria andTireTreadwearIsNotNull() {
            addCriterion("tire_treadwear is not null");
            return (Criteria) this;
        }

        public Criteria andTireTreadwearEqualTo(Float value) {
            addCriterion("tire_treadwear =", value, "tireTreadwear");
            return (Criteria) this;
        }

        public Criteria andTireTreadwearNotEqualTo(Float value) {
            addCriterion("tire_treadwear <>", value, "tireTreadwear");
            return (Criteria) this;
        }

        public Criteria andTireTreadwearGreaterThan(Float value) {
            addCriterion("tire_treadwear >", value, "tireTreadwear");
            return (Criteria) this;
        }

        public Criteria andTireTreadwearGreaterThanOrEqualTo(Float value) {
            addCriterion("tire_treadwear >=", value, "tireTreadwear");
            return (Criteria) this;
        }

        public Criteria andTireTreadwearLessThan(Float value) {
            addCriterion("tire_treadwear <", value, "tireTreadwear");
            return (Criteria) this;
        }

        public Criteria andTireTreadwearLessThanOrEqualTo(Float value) {
            addCriterion("tire_treadwear <=", value, "tireTreadwear");
            return (Criteria) this;
        }

        public Criteria andTireTreadwearIn(List<Float> values) {
            addCriterion("tire_treadwear in", values, "tireTreadwear");
            return (Criteria) this;
        }

        public Criteria andTireTreadwearNotIn(List<Float> values) {
            addCriterion("tire_treadwear not in", values, "tireTreadwear");
            return (Criteria) this;
        }

        public Criteria andTireTreadwearBetween(Float value1, Float value2) {
            addCriterion("tire_treadwear between", value1, value2, "tireTreadwear");
            return (Criteria) this;
        }

        public Criteria andTireTreadwearNotBetween(Float value1, Float value2) {
            addCriterion("tire_treadwear not between", value1, value2, "tireTreadwear");
            return (Criteria) this;
        }

        public Criteria andTireWettractionIsNull() {
            addCriterion("tire_wettraction is null");
            return (Criteria) this;
        }

        public Criteria andTireWettractionIsNotNull() {
            addCriterion("tire_wettraction is not null");
            return (Criteria) this;
        }

        public Criteria andTireWettractionEqualTo(Float value) {
            addCriterion("tire_wettraction =", value, "tireWettraction");
            return (Criteria) this;
        }

        public Criteria andTireWettractionNotEqualTo(Float value) {
            addCriterion("tire_wettraction <>", value, "tireWettraction");
            return (Criteria) this;
        }

        public Criteria andTireWettractionGreaterThan(Float value) {
            addCriterion("tire_wettraction >", value, "tireWettraction");
            return (Criteria) this;
        }

        public Criteria andTireWettractionGreaterThanOrEqualTo(Float value) {
            addCriterion("tire_wettraction >=", value, "tireWettraction");
            return (Criteria) this;
        }

        public Criteria andTireWettractionLessThan(Float value) {
            addCriterion("tire_wettraction <", value, "tireWettraction");
            return (Criteria) this;
        }

        public Criteria andTireWettractionLessThanOrEqualTo(Float value) {
            addCriterion("tire_wettraction <=", value, "tireWettraction");
            return (Criteria) this;
        }

        public Criteria andTireWettractionIn(List<Float> values) {
            addCriterion("tire_wettraction in", values, "tireWettraction");
            return (Criteria) this;
        }

        public Criteria andTireWettractionNotIn(List<Float> values) {
            addCriterion("tire_wettraction not in", values, "tireWettraction");
            return (Criteria) this;
        }

        public Criteria andTireWettractionBetween(Float value1, Float value2) {
            addCriterion("tire_wettraction between", value1, value2, "tireWettraction");
            return (Criteria) this;
        }

        public Criteria andTireWettractionNotBetween(Float value1, Float value2) {
            addCriterion("tire_wettraction not between", value1, value2, "tireWettraction");
            return (Criteria) this;
        }

        public Criteria andTireSnowIsNull() {
            addCriterion("tire_snow is null");
            return (Criteria) this;
        }

        public Criteria andTireSnowIsNotNull() {
            addCriterion("tire_snow is not null");
            return (Criteria) this;
        }

        public Criteria andTireSnowEqualTo(String value) {
            addCriterion("tire_snow =", value, "tireSnow");
            return (Criteria) this;
        }

        public Criteria andTireSnowNotEqualTo(String value) {
            addCriterion("tire_snow <>", value, "tireSnow");
            return (Criteria) this;
        }

        public Criteria andTireSnowGreaterThan(String value) {
            addCriterion("tire_snow >", value, "tireSnow");
            return (Criteria) this;
        }

        public Criteria andTireSnowGreaterThanOrEqualTo(String value) {
            addCriterion("tire_snow >=", value, "tireSnow");
            return (Criteria) this;
        }

        public Criteria andTireSnowLessThan(String value) {
            addCriterion("tire_snow <", value, "tireSnow");
            return (Criteria) this;
        }

        public Criteria andTireSnowLessThanOrEqualTo(String value) {
            addCriterion("tire_snow <=", value, "tireSnow");
            return (Criteria) this;
        }

        public Criteria andTireSnowLike(String value) {
            addCriterion("tire_snow like", value, "tireSnow");
            return (Criteria) this;
        }

        public Criteria andTireSnowNotLike(String value) {
            addCriterion("tire_snow not like", value, "tireSnow");
            return (Criteria) this;
        }

        public Criteria andTireSnowIn(List<String> values) {
            addCriterion("tire_snow in", values, "tireSnow");
            return (Criteria) this;
        }

        public Criteria andTireSnowNotIn(List<String> values) {
            addCriterion("tire_snow not in", values, "tireSnow");
            return (Criteria) this;
        }

        public Criteria andTireSnowBetween(String value1, String value2) {
            addCriterion("tire_snow between", value1, value2, "tireSnow");
            return (Criteria) this;
        }

        public Criteria andTireSnowNotBetween(String value1, String value2) {
            addCriterion("tire_snow not between", value1, value2, "tireSnow");
            return (Criteria) this;
        }

        public Criteria andTireSpeedratingIsNull() {
            addCriterion("tire_speedrating is null");
            return (Criteria) this;
        }

        public Criteria andTireSpeedratingIsNotNull() {
            addCriterion("tire_speedrating is not null");
            return (Criteria) this;
        }

        public Criteria andTireSpeedratingEqualTo(String value) {
            addCriterion("tire_speedrating =", value, "tireSpeedrating");
            return (Criteria) this;
        }

        public Criteria andTireSpeedratingNotEqualTo(String value) {
            addCriterion("tire_speedrating <>", value, "tireSpeedrating");
            return (Criteria) this;
        }

        public Criteria andTireSpeedratingGreaterThan(String value) {
            addCriterion("tire_speedrating >", value, "tireSpeedrating");
            return (Criteria) this;
        }

        public Criteria andTireSpeedratingGreaterThanOrEqualTo(String value) {
            addCriterion("tire_speedrating >=", value, "tireSpeedrating");
            return (Criteria) this;
        }

        public Criteria andTireSpeedratingLessThan(String value) {
            addCriterion("tire_speedrating <", value, "tireSpeedrating");
            return (Criteria) this;
        }

        public Criteria andTireSpeedratingLessThanOrEqualTo(String value) {
            addCriterion("tire_speedrating <=", value, "tireSpeedrating");
            return (Criteria) this;
        }

        public Criteria andTireSpeedratingLike(String value) {
            addCriterion("tire_speedrating like", value, "tireSpeedrating");
            return (Criteria) this;
        }

        public Criteria andTireSpeedratingNotLike(String value) {
            addCriterion("tire_speedrating not like", value, "tireSpeedrating");
            return (Criteria) this;
        }

        public Criteria andTireSpeedratingIn(List<String> values) {
            addCriterion("tire_speedrating in", values, "tireSpeedrating");
            return (Criteria) this;
        }

        public Criteria andTireSpeedratingNotIn(List<String> values) {
            addCriterion("tire_speedrating not in", values, "tireSpeedrating");
            return (Criteria) this;
        }

        public Criteria andTireSpeedratingBetween(String value1, String value2) {
            addCriterion("tire_speedrating between", value1, value2, "tireSpeedrating");
            return (Criteria) this;
        }

        public Criteria andTireSpeedratingNotBetween(String value1, String value2) {
            addCriterion("tire_speedrating not between", value1, value2, "tireSpeedrating");
            return (Criteria) this;
        }

        public Criteria andTireTextcolorIsNull() {
            addCriterion("tire_textcolor is null");
            return (Criteria) this;
        }

        public Criteria andTireTextcolorIsNotNull() {
            addCriterion("tire_textcolor is not null");
            return (Criteria) this;
        }

        public Criteria andTireTextcolorEqualTo(String value) {
            addCriterion("tire_textcolor =", value, "tireTextcolor");
            return (Criteria) this;
        }

        public Criteria andTireTextcolorNotEqualTo(String value) {
            addCriterion("tire_textcolor <>", value, "tireTextcolor");
            return (Criteria) this;
        }

        public Criteria andTireTextcolorGreaterThan(String value) {
            addCriterion("tire_textcolor >", value, "tireTextcolor");
            return (Criteria) this;
        }

        public Criteria andTireTextcolorGreaterThanOrEqualTo(String value) {
            addCriterion("tire_textcolor >=", value, "tireTextcolor");
            return (Criteria) this;
        }

        public Criteria andTireTextcolorLessThan(String value) {
            addCriterion("tire_textcolor <", value, "tireTextcolor");
            return (Criteria) this;
        }

        public Criteria andTireTextcolorLessThanOrEqualTo(String value) {
            addCriterion("tire_textcolor <=", value, "tireTextcolor");
            return (Criteria) this;
        }

        public Criteria andTireTextcolorLike(String value) {
            addCriterion("tire_textcolor like", value, "tireTextcolor");
            return (Criteria) this;
        }

        public Criteria andTireTextcolorNotLike(String value) {
            addCriterion("tire_textcolor not like", value, "tireTextcolor");
            return (Criteria) this;
        }

        public Criteria andTireTextcolorIn(List<String> values) {
            addCriterion("tire_textcolor in", values, "tireTextcolor");
            return (Criteria) this;
        }

        public Criteria andTireTextcolorNotIn(List<String> values) {
            addCriterion("tire_textcolor not in", values, "tireTextcolor");
            return (Criteria) this;
        }

        public Criteria andTireTextcolorBetween(String value1, String value2) {
            addCriterion("tire_textcolor between", value1, value2, "tireTextcolor");
            return (Criteria) this;
        }

        public Criteria andTireTextcolorNotBetween(String value1, String value2) {
            addCriterion("tire_textcolor not between", value1, value2, "tireTextcolor");
            return (Criteria) this;
        }

        public Criteria andTireTypeIsNull() {
            addCriterion("tire_type is null");
            return (Criteria) this;
        }

        public Criteria andTireTypeIsNotNull() {
            addCriterion("tire_type is not null");
            return (Criteria) this;
        }

        public Criteria andTireTypeEqualTo(String value) {
            addCriterion("tire_type =", value, "tireType");
            return (Criteria) this;
        }

        public Criteria andTireTypeNotEqualTo(String value) {
            addCriterion("tire_type <>", value, "tireType");
            return (Criteria) this;
        }

        public Criteria andTireTypeGreaterThan(String value) {
            addCriterion("tire_type >", value, "tireType");
            return (Criteria) this;
        }

        public Criteria andTireTypeGreaterThanOrEqualTo(String value) {
            addCriterion("tire_type >=", value, "tireType");
            return (Criteria) this;
        }

        public Criteria andTireTypeLessThan(String value) {
            addCriterion("tire_type <", value, "tireType");
            return (Criteria) this;
        }

        public Criteria andTireTypeLessThanOrEqualTo(String value) {
            addCriterion("tire_type <=", value, "tireType");
            return (Criteria) this;
        }

        public Criteria andTireTypeLike(String value) {
            addCriterion("tire_type like", value, "tireType");
            return (Criteria) this;
        }

        public Criteria andTireTypeNotLike(String value) {
            addCriterion("tire_type not like", value, "tireType");
            return (Criteria) this;
        }

        public Criteria andTireTypeIn(List<String> values) {
            addCriterion("tire_type in", values, "tireType");
            return (Criteria) this;
        }

        public Criteria andTireTypeNotIn(List<String> values) {
            addCriterion("tire_type not in", values, "tireType");
            return (Criteria) this;
        }

        public Criteria andTireTypeBetween(String value1, String value2) {
            addCriterion("tire_type between", value1, value2, "tireType");
            return (Criteria) this;
        }

        public Criteria andTireTypeNotBetween(String value1, String value2) {
            addCriterion("tire_type not between", value1, value2, "tireType");
            return (Criteria) this;
        }

        public Criteria andTireWidthIsNull() {
            addCriterion("tire_width is null");
            return (Criteria) this;
        }

        public Criteria andTireWidthIsNotNull() {
            addCriterion("tire_width is not null");
            return (Criteria) this;
        }

        public Criteria andTireWidthEqualTo(Float value) {
            addCriterion("tire_width =", value, "tireWidth");
            return (Criteria) this;
        }

        public Criteria andTireWidthNotEqualTo(Float value) {
            addCriterion("tire_width <>", value, "tireWidth");
            return (Criteria) this;
        }

        public Criteria andTireWidthGreaterThan(Float value) {
            addCriterion("tire_width >", value, "tireWidth");
            return (Criteria) this;
        }

        public Criteria andTireWidthGreaterThanOrEqualTo(Float value) {
            addCriterion("tire_width >=", value, "tireWidth");
            return (Criteria) this;
        }

        public Criteria andTireWidthLessThan(Float value) {
            addCriterion("tire_width <", value, "tireWidth");
            return (Criteria) this;
        }

        public Criteria andTireWidthLessThanOrEqualTo(Float value) {
            addCriterion("tire_width <=", value, "tireWidth");
            return (Criteria) this;
        }

        public Criteria andTireWidthIn(List<Float> values) {
            addCriterion("tire_width in", values, "tireWidth");
            return (Criteria) this;
        }

        public Criteria andTireWidthNotIn(List<Float> values) {
            addCriterion("tire_width not in", values, "tireWidth");
            return (Criteria) this;
        }

        public Criteria andTireWidthBetween(Float value1, Float value2) {
            addCriterion("tire_width between", value1, value2, "tireWidth");
            return (Criteria) this;
        }

        public Criteria andTireWidthNotBetween(Float value1, Float value2) {
            addCriterion("tire_width not between", value1, value2, "tireWidth");
            return (Criteria) this;
        }

        public Criteria andVariantDescriptionIsNull() {
            addCriterion("variant_description is null");
            return (Criteria) this;
        }

        public Criteria andVariantDescriptionIsNotNull() {
            addCriterion("variant_description is not null");
            return (Criteria) this;
        }

        public Criteria andVariantDescriptionEqualTo(String value) {
            addCriterion("variant_description =", value, "variantDescription");
            return (Criteria) this;
        }

        public Criteria andVariantDescriptionNotEqualTo(String value) {
            addCriterion("variant_description <>", value, "variantDescription");
            return (Criteria) this;
        }

        public Criteria andVariantDescriptionGreaterThan(String value) {
            addCriterion("variant_description >", value, "variantDescription");
            return (Criteria) this;
        }

        public Criteria andVariantDescriptionGreaterThanOrEqualTo(String value) {
            addCriterion("variant_description >=", value, "variantDescription");
            return (Criteria) this;
        }

        public Criteria andVariantDescriptionLessThan(String value) {
            addCriterion("variant_description <", value, "variantDescription");
            return (Criteria) this;
        }

        public Criteria andVariantDescriptionLessThanOrEqualTo(String value) {
            addCriterion("variant_description <=", value, "variantDescription");
            return (Criteria) this;
        }

        public Criteria andVariantDescriptionLike(String value) {
            addCriterion("variant_description like", value, "variantDescription");
            return (Criteria) this;
        }

        public Criteria andVariantDescriptionNotLike(String value) {
            addCriterion("variant_description not like", value, "variantDescription");
            return (Criteria) this;
        }

        public Criteria andVariantDescriptionIn(List<String> values) {
            addCriterion("variant_description in", values, "variantDescription");
            return (Criteria) this;
        }

        public Criteria andVariantDescriptionNotIn(List<String> values) {
            addCriterion("variant_description not in", values, "variantDescription");
            return (Criteria) this;
        }

        public Criteria andVariantDescriptionBetween(String value1, String value2) {
            addCriterion("variant_description between", value1, value2, "variantDescription");
            return (Criteria) this;
        }

        public Criteria andVariantDescriptionNotBetween(String value1, String value2) {
            addCriterion("variant_description not between", value1, value2, "variantDescription");
            return (Criteria) this;
        }

        public Criteria andCostIsNull() {
            addCriterion("cost is null");
            return (Criteria) this;
        }

        public Criteria andCostIsNotNull() {
            addCriterion("cost is not null");
            return (Criteria) this;
        }

        public Criteria andCostEqualTo(Double value) {
            addCriterion("cost =", value, "cost");
            return (Criteria) this;
        }

        public Criteria andCostNotEqualTo(Double value) {
            addCriterion("cost <>", value, "cost");
            return (Criteria) this;
        }

        public Criteria andCostGreaterThan(Double value) {
            addCriterion("cost >", value, "cost");
            return (Criteria) this;
        }

        public Criteria andCostGreaterThanOrEqualTo(Double value) {
            addCriterion("cost >=", value, "cost");
            return (Criteria) this;
        }

        public Criteria andCostLessThan(Double value) {
            addCriterion("cost <", value, "cost");
            return (Criteria) this;
        }

        public Criteria andCostLessThanOrEqualTo(Double value) {
            addCriterion("cost <=", value, "cost");
            return (Criteria) this;
        }

        public Criteria andCostIn(List<Double> values) {
            addCriterion("cost in", values, "cost");
            return (Criteria) this;
        }

        public Criteria andCostNotIn(List<Double> values) {
            addCriterion("cost not in", values, "cost");
            return (Criteria) this;
        }

        public Criteria andCostBetween(Double value1, Double value2) {
            addCriterion("cost between", value1, value2, "cost");
            return (Criteria) this;
        }

        public Criteria andCostNotBetween(Double value1, Double value2) {
            addCriterion("cost not between", value1, value2, "cost");
            return (Criteria) this;
        }

        public Criteria andPriceIsNull() {
            addCriterion("price is null");
            return (Criteria) this;
        }

        public Criteria andPriceIsNotNull() {
            addCriterion("price is not null");
            return (Criteria) this;
        }

        public Criteria andPriceEqualTo(Double value) {
            addCriterion("price =", value, "price");
            return (Criteria) this;
        }

        public Criteria andPriceNotEqualTo(Double value) {
            addCriterion("price <>", value, "price");
            return (Criteria) this;
        }

        public Criteria andPriceGreaterThan(Double value) {
            addCriterion("price >", value, "price");
            return (Criteria) this;
        }

        public Criteria andPriceGreaterThanOrEqualTo(Double value) {
            addCriterion("price >=", value, "price");
            return (Criteria) this;
        }

        public Criteria andPriceLessThan(Double value) {
            addCriterion("price <", value, "price");
            return (Criteria) this;
        }

        public Criteria andPriceLessThanOrEqualTo(Double value) {
            addCriterion("price <=", value, "price");
            return (Criteria) this;
        }

        public Criteria andPriceIn(List<Double> values) {
            addCriterion("price in", values, "price");
            return (Criteria) this;
        }

        public Criteria andPriceNotIn(List<Double> values) {
            addCriterion("price not in", values, "price");
            return (Criteria) this;
        }

        public Criteria andPriceBetween(Double value1, Double value2) {
            addCriterion("price between", value1, value2, "price");
            return (Criteria) this;
        }

        public Criteria andPriceNotBetween(Double value1, Double value2) {
            addCriterion("price not between", value1, value2, "price");
            return (Criteria) this;
        }

        public Criteria andMarketingPriceIsNull() {
            addCriterion("marketing_price is null");
            return (Criteria) this;
        }

        public Criteria andMarketingPriceIsNotNull() {
            addCriterion("marketing_price is not null");
            return (Criteria) this;
        }

        public Criteria andMarketingPriceEqualTo(Double value) {
            addCriterion("marketing_price =", value, "marketingPrice");
            return (Criteria) this;
        }

        public Criteria andMarketingPriceNotEqualTo(Double value) {
            addCriterion("marketing_price <>", value, "marketingPrice");
            return (Criteria) this;
        }

        public Criteria andMarketingPriceGreaterThan(Double value) {
            addCriterion("marketing_price >", value, "marketingPrice");
            return (Criteria) this;
        }

        public Criteria andMarketingPriceGreaterThanOrEqualTo(Double value) {
            addCriterion("marketing_price >=", value, "marketingPrice");
            return (Criteria) this;
        }

        public Criteria andMarketingPriceLessThan(Double value) {
            addCriterion("marketing_price <", value, "marketingPrice");
            return (Criteria) this;
        }

        public Criteria andMarketingPriceLessThanOrEqualTo(Double value) {
            addCriterion("marketing_price <=", value, "marketingPrice");
            return (Criteria) this;
        }

        public Criteria andMarketingPriceIn(List<Double> values) {
            addCriterion("marketing_price in", values, "marketingPrice");
            return (Criteria) this;
        }

        public Criteria andMarketingPriceNotIn(List<Double> values) {
            addCriterion("marketing_price not in", values, "marketingPrice");
            return (Criteria) this;
        }

        public Criteria andMarketingPriceBetween(Double value1, Double value2) {
            addCriterion("marketing_price between", value1, value2, "marketingPrice");
            return (Criteria) this;
        }

        public Criteria andMarketingPriceNotBetween(Double value1, Double value2) {
            addCriterion("marketing_price not between", value1, value2, "marketingPrice");
            return (Criteria) this;
        }

        public Criteria andDisplayNameIsNull() {
            addCriterion("display_name is null");
            return (Criteria) this;
        }

        public Criteria andDisplayNameIsNotNull() {
            addCriterion("display_name is not null");
            return (Criteria) this;
        }

        public Criteria andDisplayNameEqualTo(String value) {
            addCriterion("display_name =", value, "displayName");
            return (Criteria) this;
        }

        public Criteria andDisplayNameNotEqualTo(String value) {
            addCriterion("display_name <>", value, "displayName");
            return (Criteria) this;
        }

        public Criteria andDisplayNameGreaterThan(String value) {
            addCriterion("display_name >", value, "displayName");
            return (Criteria) this;
        }

        public Criteria andDisplayNameGreaterThanOrEqualTo(String value) {
            addCriterion("display_name >=", value, "displayName");
            return (Criteria) this;
        }

        public Criteria andDisplayNameLessThan(String value) {
            addCriterion("display_name <", value, "displayName");
            return (Criteria) this;
        }

        public Criteria andDisplayNameLessThanOrEqualTo(String value) {
            addCriterion("display_name <=", value, "displayName");
            return (Criteria) this;
        }

        public Criteria andDisplayNameLike(String value) {
            addCriterion("display_name like", value, "displayName");
            return (Criteria) this;
        }

        public Criteria andDisplayNameNotLike(String value) {
            addCriterion("display_name not like", value, "displayName");
            return (Criteria) this;
        }

        public Criteria andDisplayNameIn(List<String> values) {
            addCriterion("display_name in", values, "displayName");
            return (Criteria) this;
        }

        public Criteria andDisplayNameNotIn(List<String> values) {
            addCriterion("display_name not in", values, "displayName");
            return (Criteria) this;
        }

        public Criteria andDisplayNameBetween(String value1, String value2) {
            addCriterion("display_name between", value1, value2, "displayName");
            return (Criteria) this;
        }

        public Criteria andDisplayNameNotBetween(String value1, String value2) {
            addCriterion("display_name not between", value1, value2, "displayName");
            return (Criteria) this;
        }

        public Criteria andHeightIsNull() {
            addCriterion("height is null");
            return (Criteria) this;
        }

        public Criteria andHeightIsNotNull() {
            addCriterion("height is not null");
            return (Criteria) this;
        }

        public Criteria andHeightEqualTo(Float value) {
            addCriterion("height =", value, "height");
            return (Criteria) this;
        }

        public Criteria andHeightNotEqualTo(Float value) {
            addCriterion("height <>", value, "height");
            return (Criteria) this;
        }

        public Criteria andHeightGreaterThan(Float value) {
            addCriterion("height >", value, "height");
            return (Criteria) this;
        }

        public Criteria andHeightGreaterThanOrEqualTo(Float value) {
            addCriterion("height >=", value, "height");
            return (Criteria) this;
        }

        public Criteria andHeightLessThan(Float value) {
            addCriterion("height <", value, "height");
            return (Criteria) this;
        }

        public Criteria andHeightLessThanOrEqualTo(Float value) {
            addCriterion("height <=", value, "height");
            return (Criteria) this;
        }

        public Criteria andHeightIn(List<Float> values) {
            addCriterion("height in", values, "height");
            return (Criteria) this;
        }

        public Criteria andHeightNotIn(List<Float> values) {
            addCriterion("height not in", values, "height");
            return (Criteria) this;
        }

        public Criteria andHeightBetween(Float value1, Float value2) {
            addCriterion("height between", value1, value2, "height");
            return (Criteria) this;
        }

        public Criteria andHeightNotBetween(Float value1, Float value2) {
            addCriterion("height not between", value1, value2, "height");
            return (Criteria) this;
        }

        public Criteria andInvoiceIsNull() {
            addCriterion("invoice is null");
            return (Criteria) this;
        }

        public Criteria andInvoiceIsNotNull() {
            addCriterion("invoice is not null");
            return (Criteria) this;
        }

        public Criteria andInvoiceEqualTo(String value) {
            addCriterion("invoice =", value, "invoice");
            return (Criteria) this;
        }

        public Criteria andInvoiceNotEqualTo(String value) {
            addCriterion("invoice <>", value, "invoice");
            return (Criteria) this;
        }

        public Criteria andInvoiceGreaterThan(String value) {
            addCriterion("invoice >", value, "invoice");
            return (Criteria) this;
        }

        public Criteria andInvoiceGreaterThanOrEqualTo(String value) {
            addCriterion("invoice >=", value, "invoice");
            return (Criteria) this;
        }

        public Criteria andInvoiceLessThan(String value) {
            addCriterion("invoice <", value, "invoice");
            return (Criteria) this;
        }

        public Criteria andInvoiceLessThanOrEqualTo(String value) {
            addCriterion("invoice <=", value, "invoice");
            return (Criteria) this;
        }

        public Criteria andInvoiceLike(String value) {
            addCriterion("invoice like", value, "invoice");
            return (Criteria) this;
        }

        public Criteria andInvoiceNotLike(String value) {
            addCriterion("invoice not like", value, "invoice");
            return (Criteria) this;
        }

        public Criteria andInvoiceIn(List<String> values) {
            addCriterion("invoice in", values, "invoice");
            return (Criteria) this;
        }

        public Criteria andInvoiceNotIn(List<String> values) {
            addCriterion("invoice not in", values, "invoice");
            return (Criteria) this;
        }

        public Criteria andInvoiceBetween(String value1, String value2) {
            addCriterion("invoice between", value1, value2, "invoice");
            return (Criteria) this;
        }

        public Criteria andInvoiceNotBetween(String value1, String value2) {
            addCriterion("invoice not between", value1, value2, "invoice");
            return (Criteria) this;
        }

        public Criteria andIsoeIsNull() {
            addCriterion("isOE is null");
            return (Criteria) this;
        }

        public Criteria andIsoeIsNotNull() {
            addCriterion("isOE is not null");
            return (Criteria) this;
        }

        public Criteria andIsoeEqualTo(Integer value) {
            addCriterion("isOE =", value, "isoe");
            return (Criteria) this;
        }

        public Criteria andIsoeNotEqualTo(Integer value) {
            addCriterion("isOE <>", value, "isoe");
            return (Criteria) this;
        }

        public Criteria andIsoeGreaterThan(Integer value) {
            addCriterion("isOE >", value, "isoe");
            return (Criteria) this;
        }

        public Criteria andIsoeGreaterThanOrEqualTo(Integer value) {
            addCriterion("isOE >=", value, "isoe");
            return (Criteria) this;
        }

        public Criteria andIsoeLessThan(Integer value) {
            addCriterion("isOE <", value, "isoe");
            return (Criteria) this;
        }

        public Criteria andIsoeLessThanOrEqualTo(Integer value) {
            addCriterion("isOE <=", value, "isoe");
            return (Criteria) this;
        }

        public Criteria andIsoeIn(List<Integer> values) {
            addCriterion("isOE in", values, "isoe");
            return (Criteria) this;
        }

        public Criteria andIsoeNotIn(List<Integer> values) {
            addCriterion("isOE not in", values, "isoe");
            return (Criteria) this;
        }

        public Criteria andIsoeBetween(Integer value1, Integer value2) {
            addCriterion("isOE between", value1, value2, "isoe");
            return (Criteria) this;
        }

        public Criteria andIsoeNotBetween(Integer value1, Integer value2) {
            addCriterion("isOE not between", value1, value2, "isoe");
            return (Criteria) this;
        }

        public Criteria andIsPackageProductIsNull() {
            addCriterion("is_package_product is null");
            return (Criteria) this;
        }

        public Criteria andIsPackageProductIsNotNull() {
            addCriterion("is_package_product is not null");
            return (Criteria) this;
        }

        public Criteria andIsPackageProductEqualTo(Boolean value) {
            addCriterion("is_package_product =", value, "isPackageProduct");
            return (Criteria) this;
        }

        public Criteria andIsPackageProductNotEqualTo(Boolean value) {
            addCriterion("is_package_product <>", value, "isPackageProduct");
            return (Criteria) this;
        }

        public Criteria andIsPackageProductGreaterThan(Boolean value) {
            addCriterion("is_package_product >", value, "isPackageProduct");
            return (Criteria) this;
        }

        public Criteria andIsPackageProductGreaterThanOrEqualTo(Boolean value) {
            addCriterion("is_package_product >=", value, "isPackageProduct");
            return (Criteria) this;
        }

        public Criteria andIsPackageProductLessThan(Boolean value) {
            addCriterion("is_package_product <", value, "isPackageProduct");
            return (Criteria) this;
        }

        public Criteria andIsPackageProductLessThanOrEqualTo(Boolean value) {
            addCriterion("is_package_product <=", value, "isPackageProduct");
            return (Criteria) this;
        }

        public Criteria andIsPackageProductIn(List<Boolean> values) {
            addCriterion("is_package_product in", values, "isPackageProduct");
            return (Criteria) this;
        }

        public Criteria andIsPackageProductNotIn(List<Boolean> values) {
            addCriterion("is_package_product not in", values, "isPackageProduct");
            return (Criteria) this;
        }

        public Criteria andIsPackageProductBetween(Boolean value1, Boolean value2) {
            addCriterion("is_package_product between", value1, value2, "isPackageProduct");
            return (Criteria) this;
        }

        public Criteria andIsPackageProductNotBetween(Boolean value1, Boolean value2) {
            addCriterion("is_package_product not between", value1, value2, "isPackageProduct");
            return (Criteria) this;
        }

        public Criteria andIsShowIsNull() {
            addCriterion("is_show is null");
            return (Criteria) this;
        }

        public Criteria andIsShowIsNotNull() {
            addCriterion("is_show is not null");
            return (Criteria) this;
        }

        public Criteria andIsShowEqualTo(Boolean value) {
            addCriterion("is_show =", value, "isShow");
            return (Criteria) this;
        }

        public Criteria andIsShowNotEqualTo(Boolean value) {
            addCriterion("is_show <>", value, "isShow");
            return (Criteria) this;
        }

        public Criteria andIsShowGreaterThan(Boolean value) {
            addCriterion("is_show >", value, "isShow");
            return (Criteria) this;
        }

        public Criteria andIsShowGreaterThanOrEqualTo(Boolean value) {
            addCriterion("is_show >=", value, "isShow");
            return (Criteria) this;
        }

        public Criteria andIsShowLessThan(Boolean value) {
            addCriterion("is_show <", value, "isShow");
            return (Criteria) this;
        }

        public Criteria andIsShowLessThanOrEqualTo(Boolean value) {
            addCriterion("is_show <=", value, "isShow");
            return (Criteria) this;
        }

        public Criteria andIsShowIn(List<Boolean> values) {
            addCriterion("is_show in", values, "isShow");
            return (Criteria) this;
        }

        public Criteria andIsShowNotIn(List<Boolean> values) {
            addCriterion("is_show not in", values, "isShow");
            return (Criteria) this;
        }

        public Criteria andIsShowBetween(Boolean value1, Boolean value2) {
            addCriterion("is_show between", value1, value2, "isShow");
            return (Criteria) this;
        }

        public Criteria andIsShowNotBetween(Boolean value1, Boolean value2) {
            addCriterion("is_show not between", value1, value2, "isShow");
            return (Criteria) this;
        }

        public Criteria andLengthIsNull() {
            addCriterion("length is null");
            return (Criteria) this;
        }

        public Criteria andLengthIsNotNull() {
            addCriterion("length is not null");
            return (Criteria) this;
        }

        public Criteria andLengthEqualTo(Float value) {
            addCriterion("length =", value, "length");
            return (Criteria) this;
        }

        public Criteria andLengthNotEqualTo(Float value) {
            addCriterion("length <>", value, "length");
            return (Criteria) this;
        }

        public Criteria andLengthGreaterThan(Float value) {
            addCriterion("length >", value, "length");
            return (Criteria) this;
        }

        public Criteria andLengthGreaterThanOrEqualTo(Float value) {
            addCriterion("length >=", value, "length");
            return (Criteria) this;
        }

        public Criteria andLengthLessThan(Float value) {
            addCriterion("length <", value, "length");
            return (Criteria) this;
        }

        public Criteria andLengthLessThanOrEqualTo(Float value) {
            addCriterion("length <=", value, "length");
            return (Criteria) this;
        }

        public Criteria andLengthIn(List<Float> values) {
            addCriterion("length in", values, "length");
            return (Criteria) this;
        }

        public Criteria andLengthNotIn(List<Float> values) {
            addCriterion("length not in", values, "length");
            return (Criteria) this;
        }

        public Criteria andLengthBetween(Float value1, Float value2) {
            addCriterion("length between", value1, value2, "length");
            return (Criteria) this;
        }

        public Criteria andLengthNotBetween(Float value1, Float value2) {
            addCriterion("length not between", value1, value2, "length");
            return (Criteria) this;
        }

        public Criteria andMonitorLevelIsNull() {
            addCriterion("monitor_level is null");
            return (Criteria) this;
        }

        public Criteria andMonitorLevelIsNotNull() {
            addCriterion("monitor_level is not null");
            return (Criteria) this;
        }

        public Criteria andMonitorLevelEqualTo(Integer value) {
            addCriterion("monitor_level =", value, "monitorLevel");
            return (Criteria) this;
        }

        public Criteria andMonitorLevelNotEqualTo(Integer value) {
            addCriterion("monitor_level <>", value, "monitorLevel");
            return (Criteria) this;
        }

        public Criteria andMonitorLevelGreaterThan(Integer value) {
            addCriterion("monitor_level >", value, "monitorLevel");
            return (Criteria) this;
        }

        public Criteria andMonitorLevelGreaterThanOrEqualTo(Integer value) {
            addCriterion("monitor_level >=", value, "monitorLevel");
            return (Criteria) this;
        }

        public Criteria andMonitorLevelLessThan(Integer value) {
            addCriterion("monitor_level <", value, "monitorLevel");
            return (Criteria) this;
        }

        public Criteria andMonitorLevelLessThanOrEqualTo(Integer value) {
            addCriterion("monitor_level <=", value, "monitorLevel");
            return (Criteria) this;
        }

        public Criteria andMonitorLevelIn(List<Integer> values) {
            addCriterion("monitor_level in", values, "monitorLevel");
            return (Criteria) this;
        }

        public Criteria andMonitorLevelNotIn(List<Integer> values) {
            addCriterion("monitor_level not in", values, "monitorLevel");
            return (Criteria) this;
        }

        public Criteria andMonitorLevelBetween(Integer value1, Integer value2) {
            addCriterion("monitor_level between", value1, value2, "monitorLevel");
            return (Criteria) this;
        }

        public Criteria andMonitorLevelNotBetween(Integer value1, Integer value2) {
            addCriterion("monitor_level not between", value1, value2, "monitorLevel");
            return (Criteria) this;
        }

        public Criteria andOnSaleIsNull() {
            addCriterion("on_sale is null");
            return (Criteria) this;
        }

        public Criteria andOnSaleIsNotNull() {
            addCriterion("on_sale is not null");
            return (Criteria) this;
        }

        public Criteria andOnSaleEqualTo(Boolean value) {
            addCriterion("on_sale =", value, "onSale");
            return (Criteria) this;
        }

        public Criteria andOnSaleNotEqualTo(Boolean value) {
            addCriterion("on_sale <>", value, "onSale");
            return (Criteria) this;
        }

        public Criteria andOnSaleGreaterThan(Boolean value) {
            addCriterion("on_sale >", value, "onSale");
            return (Criteria) this;
        }

        public Criteria andOnSaleGreaterThanOrEqualTo(Boolean value) {
            addCriterion("on_sale >=", value, "onSale");
            return (Criteria) this;
        }

        public Criteria andOnSaleLessThan(Boolean value) {
            addCriterion("on_sale <", value, "onSale");
            return (Criteria) this;
        }

        public Criteria andOnSaleLessThanOrEqualTo(Boolean value) {
            addCriterion("on_sale <=", value, "onSale");
            return (Criteria) this;
        }

        public Criteria andOnSaleIn(List<Boolean> values) {
            addCriterion("on_sale in", values, "onSale");
            return (Criteria) this;
        }

        public Criteria andOnSaleNotIn(List<Boolean> values) {
            addCriterion("on_sale not in", values, "onSale");
            return (Criteria) this;
        }

        public Criteria andOnSaleBetween(Boolean value1, Boolean value2) {
            addCriterion("on_sale between", value1, value2, "onSale");
            return (Criteria) this;
        }

        public Criteria andOnSaleNotBetween(Boolean value1, Boolean value2) {
            addCriterion("on_sale not between", value1, value2, "onSale");
            return (Criteria) this;
        }

        public Criteria andSpecialSizeIsNull() {
            addCriterion("special_size is null");
            return (Criteria) this;
        }

        public Criteria andSpecialSizeIsNotNull() {
            addCriterion("special_size is not null");
            return (Criteria) this;
        }

        public Criteria andSpecialSizeEqualTo(String value) {
            addCriterion("special_size =", value, "specialSize");
            return (Criteria) this;
        }

        public Criteria andSpecialSizeNotEqualTo(String value) {
            addCriterion("special_size <>", value, "specialSize");
            return (Criteria) this;
        }

        public Criteria andSpecialSizeGreaterThan(String value) {
            addCriterion("special_size >", value, "specialSize");
            return (Criteria) this;
        }

        public Criteria andSpecialSizeGreaterThanOrEqualTo(String value) {
            addCriterion("special_size >=", value, "specialSize");
            return (Criteria) this;
        }

        public Criteria andSpecialSizeLessThan(String value) {
            addCriterion("special_size <", value, "specialSize");
            return (Criteria) this;
        }

        public Criteria andSpecialSizeLessThanOrEqualTo(String value) {
            addCriterion("special_size <=", value, "specialSize");
            return (Criteria) this;
        }

        public Criteria andSpecialSizeLike(String value) {
            addCriterion("special_size like", value, "specialSize");
            return (Criteria) this;
        }

        public Criteria andSpecialSizeNotLike(String value) {
            addCriterion("special_size not like", value, "specialSize");
            return (Criteria) this;
        }

        public Criteria andSpecialSizeIn(List<String> values) {
            addCriterion("special_size in", values, "specialSize");
            return (Criteria) this;
        }

        public Criteria andSpecialSizeNotIn(List<String> values) {
            addCriterion("special_size not in", values, "specialSize");
            return (Criteria) this;
        }

        public Criteria andSpecialSizeBetween(String value1, String value2) {
            addCriterion("special_size between", value1, value2, "specialSize");
            return (Criteria) this;
        }

        public Criteria andSpecialSizeNotBetween(String value1, String value2) {
            addCriterion("special_size not between", value1, value2, "specialSize");
            return (Criteria) this;
        }

        public Criteria andTaxRateIsNull() {
            addCriterion("tax_rate is null");
            return (Criteria) this;
        }

        public Criteria andTaxRateIsNotNull() {
            addCriterion("tax_rate is not null");
            return (Criteria) this;
        }

        public Criteria andTaxRateEqualTo(Double value) {
            addCriterion("tax_rate =", value, "taxRate");
            return (Criteria) this;
        }

        public Criteria andTaxRateNotEqualTo(Double value) {
            addCriterion("tax_rate <>", value, "taxRate");
            return (Criteria) this;
        }

        public Criteria andTaxRateGreaterThan(Double value) {
            addCriterion("tax_rate >", value, "taxRate");
            return (Criteria) this;
        }

        public Criteria andTaxRateGreaterThanOrEqualTo(Double value) {
            addCriterion("tax_rate >=", value, "taxRate");
            return (Criteria) this;
        }

        public Criteria andTaxRateLessThan(Double value) {
            addCriterion("tax_rate <", value, "taxRate");
            return (Criteria) this;
        }

        public Criteria andTaxRateLessThanOrEqualTo(Double value) {
            addCriterion("tax_rate <=", value, "taxRate");
            return (Criteria) this;
        }

        public Criteria andTaxRateIn(List<Double> values) {
            addCriterion("tax_rate in", values, "taxRate");
            return (Criteria) this;
        }

        public Criteria andTaxRateNotIn(List<Double> values) {
            addCriterion("tax_rate not in", values, "taxRate");
            return (Criteria) this;
        }

        public Criteria andTaxRateBetween(Double value1, Double value2) {
            addCriterion("tax_rate between", value1, value2, "taxRate");
            return (Criteria) this;
        }

        public Criteria andTaxRateNotBetween(Double value1, Double value2) {
            addCriterion("tax_rate not between", value1, value2, "taxRate");
            return (Criteria) this;
        }

        public Criteria andTireSeasonIsNull() {
            addCriterion("tire_season is null");
            return (Criteria) this;
        }

        public Criteria andTireSeasonIsNotNull() {
            addCriterion("tire_season is not null");
            return (Criteria) this;
        }

        public Criteria andTireSeasonEqualTo(String value) {
            addCriterion("tire_season =", value, "tireSeason");
            return (Criteria) this;
        }

        public Criteria andTireSeasonNotEqualTo(String value) {
            addCriterion("tire_season <>", value, "tireSeason");
            return (Criteria) this;
        }

        public Criteria andTireSeasonGreaterThan(String value) {
            addCriterion("tire_season >", value, "tireSeason");
            return (Criteria) this;
        }

        public Criteria andTireSeasonGreaterThanOrEqualTo(String value) {
            addCriterion("tire_season >=", value, "tireSeason");
            return (Criteria) this;
        }

        public Criteria andTireSeasonLessThan(String value) {
            addCriterion("tire_season <", value, "tireSeason");
            return (Criteria) this;
        }

        public Criteria andTireSeasonLessThanOrEqualTo(String value) {
            addCriterion("tire_season <=", value, "tireSeason");
            return (Criteria) this;
        }

        public Criteria andTireSeasonLike(String value) {
            addCriterion("tire_season like", value, "tireSeason");
            return (Criteria) this;
        }

        public Criteria andTireSeasonNotLike(String value) {
            addCriterion("tire_season not like", value, "tireSeason");
            return (Criteria) this;
        }

        public Criteria andTireSeasonIn(List<String> values) {
            addCriterion("tire_season in", values, "tireSeason");
            return (Criteria) this;
        }

        public Criteria andTireSeasonNotIn(List<String> values) {
            addCriterion("tire_season not in", values, "tireSeason");
            return (Criteria) this;
        }

        public Criteria andTireSeasonBetween(String value1, String value2) {
            addCriterion("tire_season between", value1, value2, "tireSeason");
            return (Criteria) this;
        }

        public Criteria andTireSeasonNotBetween(String value1, String value2) {
            addCriterion("tire_season not between", value1, value2, "tireSeason");
            return (Criteria) this;
        }

        public Criteria andWeightIsNull() {
            addCriterion("weight is null");
            return (Criteria) this;
        }

        public Criteria andWeightIsNotNull() {
            addCriterion("weight is not null");
            return (Criteria) this;
        }

        public Criteria andWeightEqualTo(Double value) {
            addCriterion("weight =", value, "weight");
            return (Criteria) this;
        }

        public Criteria andWeightNotEqualTo(Double value) {
            addCriterion("weight <>", value, "weight");
            return (Criteria) this;
        }

        public Criteria andWeightGreaterThan(Double value) {
            addCriterion("weight >", value, "weight");
            return (Criteria) this;
        }

        public Criteria andWeightGreaterThanOrEqualTo(Double value) {
            addCriterion("weight >=", value, "weight");
            return (Criteria) this;
        }

        public Criteria andWeightLessThan(Double value) {
            addCriterion("weight <", value, "weight");
            return (Criteria) this;
        }

        public Criteria andWeightLessThanOrEqualTo(Double value) {
            addCriterion("weight <=", value, "weight");
            return (Criteria) this;
        }

        public Criteria andWeightIn(List<Double> values) {
            addCriterion("weight in", values, "weight");
            return (Criteria) this;
        }

        public Criteria andWeightNotIn(List<Double> values) {
            addCriterion("weight not in", values, "weight");
            return (Criteria) this;
        }

        public Criteria andWeightBetween(Double value1, Double value2) {
            addCriterion("weight between", value1, value2, "weight");
            return (Criteria) this;
        }

        public Criteria andWeightNotBetween(Double value1, Double value2) {
            addCriterion("weight not between", value1, value2, "weight");
            return (Criteria) this;
        }

        public Criteria andWidthIsNull() {
            addCriterion("width is null");
            return (Criteria) this;
        }

        public Criteria andWidthIsNotNull() {
            addCriterion("width is not null");
            return (Criteria) this;
        }

        public Criteria andWidthEqualTo(Float value) {
            addCriterion("width =", value, "width");
            return (Criteria) this;
        }

        public Criteria andWidthNotEqualTo(Float value) {
            addCriterion("width <>", value, "width");
            return (Criteria) this;
        }

        public Criteria andWidthGreaterThan(Float value) {
            addCriterion("width >", value, "width");
            return (Criteria) this;
        }

        public Criteria andWidthGreaterThanOrEqualTo(Float value) {
            addCriterion("width >=", value, "width");
            return (Criteria) this;
        }

        public Criteria andWidthLessThan(Float value) {
            addCriterion("width <", value, "width");
            return (Criteria) this;
        }

        public Criteria andWidthLessThanOrEqualTo(Float value) {
            addCriterion("width <=", value, "width");
            return (Criteria) this;
        }

        public Criteria andWidthIn(List<Float> values) {
            addCriterion("width in", values, "width");
            return (Criteria) this;
        }

        public Criteria andWidthNotIn(List<Float> values) {
            addCriterion("width not in", values, "width");
            return (Criteria) this;
        }

        public Criteria andWidthBetween(Float value1, Float value2) {
            addCriterion("width between", value1, value2, "width");
            return (Criteria) this;
        }

        public Criteria andWidthNotBetween(Float value1, Float value2) {
            addCriterion("width not between", value1, value2, "width");
            return (Criteria) this;
        }

        public Criteria andCreateDateIsNull() {
            addCriterion("create_date is null");
            return (Criteria) this;
        }

        public Criteria andCreateDateIsNotNull() {
            addCriterion("create_date is not null");
            return (Criteria) this;
        }

        public Criteria andCreateDateEqualTo(Date value) {
            addCriterion("create_date =", value, "createDate");
            return (Criteria) this;
        }

        public Criteria andCreateDateNotEqualTo(Date value) {
            addCriterion("create_date <>", value, "createDate");
            return (Criteria) this;
        }

        public Criteria andCreateDateGreaterThan(Date value) {
            addCriterion("create_date >", value, "createDate");
            return (Criteria) this;
        }

        public Criteria andCreateDateGreaterThanOrEqualTo(Date value) {
            addCriterion("create_date >=", value, "createDate");
            return (Criteria) this;
        }

        public Criteria andCreateDateLessThan(Date value) {
            addCriterion("create_date <", value, "createDate");
            return (Criteria) this;
        }

        public Criteria andCreateDateLessThanOrEqualTo(Date value) {
            addCriterion("create_date <=", value, "createDate");
            return (Criteria) this;
        }

        public Criteria andCreateDateIn(List<Date> values) {
            addCriterion("create_date in", values, "createDate");
            return (Criteria) this;
        }

        public Criteria andCreateDateNotIn(List<Date> values) {
            addCriterion("create_date not in", values, "createDate");
            return (Criteria) this;
        }

        public Criteria andCreateDateBetween(Date value1, Date value2) {
            addCriterion("create_date between", value1, value2, "createDate");
            return (Criteria) this;
        }

        public Criteria andCreateDateNotBetween(Date value1, Date value2) {
            addCriterion("create_date not between", value1, value2, "createDate");
            return (Criteria) this;
        }

        public Criteria andPatternChIsNull() {
            addCriterion("pattern_ch is null");
            return (Criteria) this;
        }

        public Criteria andPatternChIsNotNull() {
            addCriterion("pattern_ch is not null");
            return (Criteria) this;
        }

        public Criteria andPatternChEqualTo(String value) {
            addCriterion("pattern_ch =", value, "patternCh");
            return (Criteria) this;
        }

        public Criteria andPatternChNotEqualTo(String value) {
            addCriterion("pattern_ch <>", value, "patternCh");
            return (Criteria) this;
        }

        public Criteria andPatternChGreaterThan(String value) {
            addCriterion("pattern_ch >", value, "patternCh");
            return (Criteria) this;
        }

        public Criteria andPatternChGreaterThanOrEqualTo(String value) {
            addCriterion("pattern_ch >=", value, "patternCh");
            return (Criteria) this;
        }

        public Criteria andPatternChLessThan(String value) {
            addCriterion("pattern_ch <", value, "patternCh");
            return (Criteria) this;
        }

        public Criteria andPatternChLessThanOrEqualTo(String value) {
            addCriterion("pattern_ch <=", value, "patternCh");
            return (Criteria) this;
        }

        public Criteria andPatternChLike(String value) {
            addCriterion("pattern_ch like", value, "patternCh");
            return (Criteria) this;
        }

        public Criteria andPatternChNotLike(String value) {
            addCriterion("pattern_ch not like", value, "patternCh");
            return (Criteria) this;
        }

        public Criteria andPatternChIn(List<String> values) {
            addCriterion("pattern_ch in", values, "patternCh");
            return (Criteria) this;
        }

        public Criteria andPatternChNotIn(List<String> values) {
            addCriterion("pattern_ch not in", values, "patternCh");
            return (Criteria) this;
        }

        public Criteria andPatternChBetween(String value1, String value2) {
            addCriterion("pattern_ch between", value1, value2, "patternCh");
            return (Criteria) this;
        }

        public Criteria andPatternChNotBetween(String value1, String value2) {
            addCriterion("pattern_ch not between", value1, value2, "patternCh");
            return (Criteria) this;
        }

        public Criteria andPatternEnIsNull() {
            addCriterion("pattern_en is null");
            return (Criteria) this;
        }

        public Criteria andPatternEnIsNotNull() {
            addCriterion("pattern_en is not null");
            return (Criteria) this;
        }

        public Criteria andPatternEnEqualTo(String value) {
            addCriterion("pattern_en =", value, "patternEn");
            return (Criteria) this;
        }

        public Criteria andPatternEnNotEqualTo(String value) {
            addCriterion("pattern_en <>", value, "patternEn");
            return (Criteria) this;
        }

        public Criteria andPatternEnGreaterThan(String value) {
            addCriterion("pattern_en >", value, "patternEn");
            return (Criteria) this;
        }

        public Criteria andPatternEnGreaterThanOrEqualTo(String value) {
            addCriterion("pattern_en >=", value, "patternEn");
            return (Criteria) this;
        }

        public Criteria andPatternEnLessThan(String value) {
            addCriterion("pattern_en <", value, "patternEn");
            return (Criteria) this;
        }

        public Criteria andPatternEnLessThanOrEqualTo(String value) {
            addCriterion("pattern_en <=", value, "patternEn");
            return (Criteria) this;
        }

        public Criteria andPatternEnLike(String value) {
            addCriterion("pattern_en like", value, "patternEn");
            return (Criteria) this;
        }

        public Criteria andPatternEnNotLike(String value) {
            addCriterion("pattern_en not like", value, "patternEn");
            return (Criteria) this;
        }

        public Criteria andPatternEnIn(List<String> values) {
            addCriterion("pattern_en in", values, "patternEn");
            return (Criteria) this;
        }

        public Criteria andPatternEnNotIn(List<String> values) {
            addCriterion("pattern_en not in", values, "patternEn");
            return (Criteria) this;
        }

        public Criteria andPatternEnBetween(String value1, String value2) {
            addCriterion("pattern_en between", value1, value2, "patternEn");
            return (Criteria) this;
        }

        public Criteria andPatternEnNotBetween(String value1, String value2) {
            addCriterion("pattern_en not between", value1, value2, "patternEn");
            return (Criteria) this;
        }

        public Criteria andPatternShortIsNull() {
            addCriterion("pattern_short is null");
            return (Criteria) this;
        }

        public Criteria andPatternShortIsNotNull() {
            addCriterion("pattern_short is not null");
            return (Criteria) this;
        }

        public Criteria andPatternShortEqualTo(String value) {
            addCriterion("pattern_short =", value, "patternShort");
            return (Criteria) this;
        }

        public Criteria andPatternShortNotEqualTo(String value) {
            addCriterion("pattern_short <>", value, "patternShort");
            return (Criteria) this;
        }

        public Criteria andPatternShortGreaterThan(String value) {
            addCriterion("pattern_short >", value, "patternShort");
            return (Criteria) this;
        }

        public Criteria andPatternShortGreaterThanOrEqualTo(String value) {
            addCriterion("pattern_short >=", value, "patternShort");
            return (Criteria) this;
        }

        public Criteria andPatternShortLessThan(String value) {
            addCriterion("pattern_short <", value, "patternShort");
            return (Criteria) this;
        }

        public Criteria andPatternShortLessThanOrEqualTo(String value) {
            addCriterion("pattern_short <=", value, "patternShort");
            return (Criteria) this;
        }

        public Criteria andPatternShortLike(String value) {
            addCriterion("pattern_short like", value, "patternShort");
            return (Criteria) this;
        }

        public Criteria andPatternShortNotLike(String value) {
            addCriterion("pattern_short not like", value, "patternShort");
            return (Criteria) this;
        }

        public Criteria andPatternShortIn(List<String> values) {
            addCriterion("pattern_short in", values, "patternShort");
            return (Criteria) this;
        }

        public Criteria andPatternShortNotIn(List<String> values) {
            addCriterion("pattern_short not in", values, "patternShort");
            return (Criteria) this;
        }

        public Criteria andPatternShortBetween(String value1, String value2) {
            addCriterion("pattern_short between", value1, value2, "patternShort");
            return (Criteria) this;
        }

        public Criteria andPatternShortNotBetween(String value1, String value2) {
            addCriterion("pattern_short not between", value1, value2, "patternShort");
            return (Criteria) this;
        }
    }

    /**
     */
    public static class Criteria extends GeneratedCriteria {

        protected Criteria() {
            super();
        }
    }

    public static class Criterion {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }
}